限制Maven中Findbugs分析的类

3

如何仅限制分析某些包的类。 在一个模块中,我不想让Maven的Findbugs运行一些包。如何排除它们。有没有办法指定要被Maven的Findbugs排除的包

1个回答

3
请参考 - http://mojo.codehaus.org/findbugs-maven-plugin/usage.html 使用mvn site而不是mvn findbugs:findbugs。
您需要在配置标签或onlyAnalyze下使用包含排除过滤文件。
<reporting>
<plugins>
  <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>findbugs-maven-plugin</artifactId>
    <version>2.5.2</version>
    <configuration>
      <excludeFilterFile>src/main/resources/findbugs-exclude.xml</excludeFilterFile>
      <includeFilterFile>src/main/resources/findbugs-include.xml</includeFilterFile>
      <onlyAnalyze>com.packagename.*</onlyAnalyze>
    </configuration>
  </plugin>
</plugins>

样例过滤器文件
<FindBugsFilter>
<Match>
    <Package name="~com\.ly\..*"/>
</Match>


1
我写了exclude.xml文件,但仍然没有跳过对这些包的分析。 当前目录:A 文件夹层次结构:A/src/main/com/ly/om/snExcelude.xml文件 这里有什么问题? - Richi Mathur
当我运行“mvn site”时,我们如何检查是否捕获了筛选文件。由于报告中未显示已排除在exclude-filter文件中提到的包,因此需要进行确认。 - Richi Mathur
我通过添加和删除一个已知存在findbugs错误的包来验证它。 - appbootup
好的。那就意味着我的过滤文件没有被选中。因为我看到了从排除文件中指定的包引发的错误 :| - Richi Mathur
我们在 src/main/resources 上检查了过滤文件,并在 <excludeFilterFile> 中引用它。另外,您可以尝试使用 <inherited>false</inherited> 进行调整。注意:http://kohsuke.org/2011/08/23/my-epic-battle-with-findbugs-maven-plugin-and-how-i-utterly-lost/ - appbootup
我更新了过滤文件并添加了excludeFilterFile标签。尝试通过"$FINDBUGS_HOME/bin/findbugs -textui -exclude /view/xyz/findbugs-exclude.xml app/"执行命令,但是我发现它没有选择该文件,因为它没有忽略common包。添加了过滤文件如下:<FindBugsFilter> <Match> <Package name="~com\.sn\.common\.*" /> </Match> </FindBugsFilter> - Richi Mathur

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接