android - 如何摆脱 Kotlin DSL 警告
问题描述
我最近才开始学习KotlinDSL
。并在Android
添加buildSrc
. 在这个文件夹中,我有模块插件:AppModulePlugin
, CommonModulePlugin
, FeatureModulePlugin
. 所有这些都编译并且应用程序安装正确,一切都很好。但在这些文件中会显示警告:
Cannot access 'com.android.build.gradle.internal.dsl.Lockable'
which is a supertype of 'com.android.build.gradle.BaseExtension'.
Check your module classpath for missing or conflicting dependencies
请告诉我如何摆脱这些警告?
解决方案
不幸的是,IntelliJ 几个月来一直有这个问题 - 它报告正确的代码是无效的。见KTIJ-3769。我相信这取决于票KTIJ-19669。
作为一种解决方法,您可以将插件引入的辅助方法替换为“普通”Gradle Kotlin
// androidExtension { }
project.extensions.configure<BaseExtension> {
}
或者只在 Kotlin(文件)中创建 buildSrc 插件*.kt
,而不是 Kotlin 脚本(*.kts
文件)。这需要使用java-gradle-plugin
和定义插件buildSrc/build.gradle.kts
。
推荐阅读
- c# - 如何使用 iText 检查 PDF 中的嵌入字体
- python - 为什么替换只在某些场合有效?
- mysql - 具有两个引用的主键
- javascript - 正则表达式检测带有 2+ 数字和 2+ 字符的单词
- python - 基于 CSV 的登录系统问题
- protractor - E/launcher - 进程退出,错误代码为 100
- php - 我的 ajax 调用得到了正确的响应,但没有做任何事情
- python - 在 Python 中对“命令式外壳,功能核心”进行单元测试时遇到问题
- makefile - 生成文件到 CodeLite
- cakephp - Cake : 未能打开 stream() 权限