从Groovy迁移到KotlinDSL后,settings.gradle
现在会收到一个关于使用此代码的lint警告
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
maven {
url = uri("https://jitpack.io")
}
}
字符串
100d1x
的字符串
当前使用AGP 8.1.3
即使在使用KotlinDSL中的IDE模板创建新项目时,上述配置也存在,并且也会收到警告。
为什么这在使用Groovy时没有显示出来,似乎是KotlinDSL有问题,或者在Groovy中lint无法检测到它?
1条答案
按热度按时间h9vpoimq1#
例如,如果您将
dependencyManagement {}
块转换回Groovy
DSL,并尝试导航到repository
处理程序,则最终会出现在具有相同@Incubating
注解的同一文件中:https://github.com/gradle/gradle/blob/master/subprojects/core-api/src/main/java/org/gradle/api/initialization/resolve/DependencyResolutionManagement.java#L44但是为什么它显示了对Kotlin的警告而没有显示对Groovy的警告呢?根据Gradle GitHub存储库中的这个答案:https://github.com/gradle/gradle/issues/20328#issuecomment-1083788360
问题不在于Gradle。而是基于
Intellij
的IDE对.gradle
和.kts
文件运行检查的方式。由于某种原因,Unstable API usage
检查不适用于.gradle
文件。看起来像是要让它工作,
IntelliJ
家伙应该把它添加到他们的Inspection目录中的Gradle
部分。