我试图为我的Android项目创建基线lint文件。我在主模块的build.gradle中设置了一个块:
max-width: 768px
然后我使用lintOptions {
<some includes/excludes>
baseline file("lint-baseline.xml")
checkAllWarnings true
warningsAsErrors true
abortOnError false
}
创建基线并设置我的单元测试任务以依赖于lint。
但是,这会给出一个包含一些绝对路径的基线文件。罪魁祸首似乎是a)在子模块中(但只有一些子模块,而不是所有子模块),或b)在我的本地gradle缓存中。当我将基线推送到我们的CI时,会出现一堆新的警告,因为这些路径并不完全匹配。
一些例子包括:
./gradlew lint<flavor/variant>
如何强制lint使用相对路径创建基线?
答案 0 :(得分:0)
为每个模块使用自己的baseline.xml。路径将相对于模块根目录。
<强>更新强> 尝试只使用一个 baseline.xml 把它放到像这样的模块上面的根gradle项目
project/app/build.gradle
project/module1/build.gradle
project/build.gradle
project/lint-baseline.xml
在模块的build.gradle中使用这样的代码段
lintOptions {
baselineFile = rootProject.file('lint-baseline.xml')
}
更新2 为每个模块使用自己的baseline.xml。 paths将相对于模块根目录。 在模块的build.gradle中使用这样的代码片段
lintOptions {
baselineFile = project.file('lint-baseline.xml')
checkDependencies = false
}
答案 1 :(得分:0)
您无法使用absolutePaths
上的LintConfig
选项吗?
android {
lintOptions {
absolutePaths false
}
}