我有一个gradle项目,我想从Findbug的分析中排除一些文件,我的项目中有一些生成的代码,我想排除那些类
下面是我的build.gradle中的findbug设置
apply plugin: 'findbugs'
findbugs {
toolVersion "3.0.1"
}
tasks.withType(FindBugs) {
excludeFilter = rootProject.file('projectConfig/findbugs/excludeFilter.xml')
reports {
xml.enabled false
html.enabled true
html.stylesheet resources.text.fromFile('../projectConfig/findbugs/findbugs-style.xsl')
}
}excludeFilter.xml的内容如下
<?xml version="1.0" encoding="UTF-8"?>
<FindBugsFilter>
<Match>
<Class name="~.*\.Immutable*\.java" />
</Match>
<Match>
<Class name="~.*\.GsonAdapters*\.java" />
</Match>
</FindBugsFilter>我想排除的示例文件有以下包名和类名
com.tools.vo.event.GsonAdaptersGetEventDataBalancesVO
com.tools.vo.event.ImmutableGetEventDataVO如果能帮助我排除这些模式,我将不胜感激。
谢谢你达米安
发布于 2017-11-17 15:00:33
这似乎是排除模式(文档、regex)的一个问题。尝试:
<Match>
<Or>
<Class name="~.*?\.Immutable.*" />
<Class name="~.*?\.GsonAdapters.*" />
</Or>
</Match>详细地说,我将表达式的开头更改为不“贪婪”,并删除了.java部分,因为这个表达式应用于类名。此外,星号运算符总是应用于前一个元素,因此您缺少了一些点。
https://stackoverflow.com/questions/47351196
复制相似问题