sta*_*ej2 11 android lint android-lint android-studio android-gradle-plugin
当我lint-baseline.xml引入不在文件中的新lint警告时,我试图使我的持续集成失败.我希望将所有lint警告视为错误(因此构建被中止),但是我想要一种方法来指定某些lint检查被视为信息或警告级别,以便它们仍然出现在lint结果中,但是不要不会导致构建中止.
这是一个基本上我想做的例子(除了这不起作用,如果存在任何非忽略的警告,构建将失败):
lintOptions {
lintConfig file("lint.xml")
baseline file("lint-baseline.xml")
checkAllWarnings true
warningsAsErrors true
abortOnError true
informational 'MissingTranslation, ...' // don't fail the build for these
}
Run Code Online (Sandbox Code Playgroud)
是否有一种简单的方法可以将所有lint检查视为错误,不包括某些错误?我考虑过手动将所有200多个lint检查设置为错误级别,但这不是将来的证据,因为每次添加新的lint检查时我都必须更新列表.
小智 7
您应该能够达到你想要什么,如果你不使用的摇篮lintOptions(checkAllWarnings,warningsAsErrors,等)来配置哪些警告应被视为错误。请改用 lint.xml。在那里您可以执行以下操作:
<?xml version="1.0" encoding="UTF-8"?>
<lint>
<issue id="MissingTranslation" severity="warning" />
<!-- The following must be at the bottom of your file!
All lint issues (not listed above) will be treated as errors. -->
<issue id="all" severity="error" />
</lint>
Run Code Online (Sandbox Code Playgroud)
在我的测试中,这似乎工作正常,所有警告都被视为错误,除了 lint.xml 顶部列出的那些。但是,我没有将它与 lint-baseline.xml 结合使用进行测试,但我认为没有理由它不应该在那里工作。
小智 5
对我来说,这个配置有效:
android {
lintOptions {
warningsAsErrors true
warning 'MissingTranslation', ...
}
}
Run Code Online (Sandbox Code Playgroud)
似乎这些选项是按照“正确的顺序”(又名“我需要的”)进行评估的,即首先所有警告都提升为错误,然后针对单个问题 ID 再次覆盖此设置。使用warning代替disable或ignore可确保问题在报告或 IDE 中仍然可见。
| 归档时间: |
|
| 查看次数: |
3293 次 |
| 最近记录: |