多模块 Android 项目中的单一 lint 报告

Single lint report in multi-modular Android project

有谁知道是否可以在多模块 Android 项目中为 Lint 检查设置一个 Gradle 任务? 目的是为所有模块(应用程序 + 一些 Android 库)提供唯一的 HTML/XML 报告。

为了做到这一点,仅在其他模块用作依赖项的模块中配置 android lint,并在 lintOptions.

中启用 checkDependencies

例如:

有一个名为app的应用程序模块使用feature_1feature_2feature_3库模块作为依赖项,因此将checkDependencies设置为[= app 模块 build.gradle 文件的 lintOptions 中的 18=]。

android{

    lintOptions{

        checkDependencies true // <---
        xmlReport false
        htmlReport true
        htmlOutput file("${project.rootDir}/build/reports/android-lint.html")

    }
}

注意

当你 运行 ./gradlew lint 这将为每个模块 build/reports 目录中的每个依赖模块生成报告,但是报告包含与项目将在指定位置生成。


参考:https://groups.google.com/d/msg/lint-dev/TpTMBMlwPPs/WZHCu59TAwAJ