lint

  
用于验证 Gradle API 使用情况的 Lint 检查
最近更新时间 稳定版 候选版 Beta 版 Alpha 版
2026 年 4 月 22 日 - - 1.0.0-beta01 -

声明依赖项

如需添加 Lint 的依赖项,您必须将 Google Maven 制品库添加到项目中。如需了解详情,请参阅 Google 的 Maven 代码库

在应用或模块的 build.gradle 文件中添加所需工件的依赖项:

Groovy

plugins {
    id("com.android.lint")
}
dependencies {
    lintChecks "androidx.lint:lint-gradle:1.0.0-beta01"
}

Kotlin

plugins {
    id("com.android.lint")
}
dependencies {
    lintChecks("androidx.lint:lint-gradle:1.0.0-beta01")
}

如需详细了解依赖项,请参阅添加 build 依赖项

反馈

您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对此库有任何改进建议,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。

创建新问题

如需了解详情,请参阅问题跟踪器文档

此工件没有版本说明。

Lint 版本 1.0

版本 1.0.0-beta01

2026 年 4 月 22 日

发布了 androidx.lint:lint-gradle:1.0.0-beta01。版本 1.0.0-beta01 中包含这些提交内容

版本 1.0.0-alpha06

2026 年 4 月 8 日

发布了 androidx.lint:lint-gradle:1.0.0-alpha06。版本 1.0.0-alpha06 中包含这些提交内容

新功能

  • 添加了对 mustRunAftershouldRunAfter 的调用检查,因为 Gradle 必须重新排列任务图,所以这些调用开销很大。
  • 针对应通过提供程序 API 进行的 System.getenv()System.getenv("key") 调用添加了检查
  • 来自 josh@fueledbycaffeine.com 的外部贡献,用于添加检查以检测提供方的字符串串联

版本 1.0.0-alpha05

2025 年 5 月 20 日

发布了 androidx.lint:lint-gradle:1.0.0-alpha05。版本 1.0.0-alpha05 中包含这些提交内容

新功能

  • 添加了一项检查,用于警告 configurations.createconfigurations.maybeCreate 的用法,因为从 Gradle 8.14 开始,这些用法会导致相应配置过早实现,因此应替换为 configurations.register
  • 添加了一项检查,用于捕获内部 Kotlin Gradle 插件 API 的使用情况
  • 添加了一项检查,用于捕获 evaluationDependsOnevaluationDependsOnChildren 的使用情况,因为在隔离项目功能中,使用这两个变量并不安全。

版本 1.0.0-alpha04

2025 年 4 月 23 日

发布了 androidx.lint:lint-gradle:1.0.0-alpha04。版本 1.0.0-alpha04 中包含这些提交内容

新功能

  • 添加了对意外 Provider<String>.toString 调用的检查,因为这很可能是 bug。
  • 添加检查以捕获来自内部类型的方法、属性、字段的使用情况。

bug 修复

  • 修复了 GradleProjectIsolation 检查,以允许使用 Project.isolated
  • 修复了 WithTypeWithoutConfigureEach 检查,以捕获在没有 configureEach 的情况下使用 Project.tasks.withType<Task>() 的情况。
  • 修复了 InternalGradleApiUsage 检查,以捕获内部 API 的完全限定用法。

版本 1.0.0-alpha03

2024 年 12 月 11 日

发布了 androidx.lint:lint-gradle:1.0.0-alpha03。版本 1.0.0-alpha03 中包含这些提交内容

新功能

  • 捕获对 Provider<>.toString 的调用,因为这样做几乎总是 bug。
  • 捕获对 TaskContainer 上 Kotlin 集合扩展函数的调用,因为这些调用会导致急切创建 Task
  • 捕获将 Configuration 传递到 ConfigurableFileCollection.from 的调用,因为这会导致配置的急切解析,建议使用 project.files(configuration)configuration.incoming.artifactView {}.files
  • 捕获 Property<File> 的用法,建议使用 RegularFilePropertyDirectoryProperty,因为这样可以强制使用目录而不是文件。

版本 1.0.0-alpha02

2024 年 9 月 4 日

发布了 androidx.lint:lint-gradle:1.0.0-alpha02。版本 1.0.0-alpha02 中包含这些提交内容

新功能

  • 添加了对不推荐使用的 GradleRunner.withPluginClasspath API 的检查。
  • 添加了对延迟配置存在问题的 API 的检查,方法是标记对 TaskContainer.withType 的调用(不调用 configureEach)。
    • 添加了对 Gradle 项目隔离存在问题的 API 的检查,方法是标记对 Project.getRootProjectProject.findProjectProject.getParentProject.findPropertyProject.getPropertiesProject.hasPropertyProject.property 的调用。

版本 1.0.0-alpha01

2024 年 2 月 21 日

发布了 androidx.lint:lint-gradle:1.0.0-alpha01版本 1.0.0-alpha01 中包含这些提交内容

新功能

  • 为 Gradle 插件作者提供了一组初始的 lint 检查,以帮助他们发现代码中的错误。它们应在应用了 java-gradle-plugin 的 Gradle 项目中使用。它会捕获内部 Gradle 和 Android Gradle 插件 API 的使用情况以及急切的任务配置。