当我对我的android项目进行声纳分析时,我总是会收到很多关于Android资源编译生成的.class文件的消息,如下所示
运行声纳:该类' foo.bar.R $ string'无法与之匹敌 原始源文件。它可能是一个动态生成的类。
我猜这些消息来自Findbugs。
我试图从声纳分析中排除**/R.class
**/R$*.class
,但没有运气。
关于如何摆脱此类消息的任何想法?
答案 0 :(得分:2)
问题通过sonar.findbugs.excludesFilters
属性
sonarqube {
properties {
property 'sonar.findbugs.excludesFilters', 'findbugs-filter.xml'
}
}
和findbugs-filter.xml是
<FindBugsFilter>
<Match>
<Or>
<Class name="~.*\.R\$.*"/>
<Class name="~.*\.Manifest\$.*"/>
</Or>
</Match>
</FindBugsFilter>