lint.xml 中的 issue.ignore.path 元素相对于什么路径



根据 Android Studio 文档 - Lint 我们可以这样写 lint.xml:

<?xml version="1.0" encoding="UTF-8"?>
<lint>
    <issue id="ObsoleteLayoutParam">
        <ignore path="res/layout/activation.xml" />
        <ignore path="res/layout-xlarge/activation.xml" />
    </issue>
</lint>

将特定路径列入白名单,但文档未指定该路径是相对路径还是绝对路径。从样本的外观来看,它似乎是相对的,但它没有指定路径是相对于什么的。当我在build.gradle中设置了几个源路径时,这更加令人困惑。

经过密集测试,结论是:

它要么是

绝对的,要么是相对的。 (可能两者兼而有之?虽然没有测试过(。

当它是相对的时,它是相对于模块的根(build.gradle 所在的位置(。

您始终可以使用像 <ignore path="**/res/layout/activation.xml" /> 这样的 **/通配符来使其相对于任何路径。

澄清:

  • 它与 lint.xml 所在的位置无关(如果您使用 android 为 lint 设置了另一条路径.xml。LintOptions.lintConfig(

  • 它与您使用 android.sourceSet 设置的源无关

最新更新