1

如果您使用Findbugs进行编译代码检查,是否有可能基于单个检测器或检测器类别的结果使构建失败?

例如,我想确保我没有任何优先级的空指针相关检测(此列表中“NP”的前缀)。同样,我们真的不希望在循环情况下有任何等待。也就是说,我不一定希望基于国际化检测的构建失败,因为它们对我们的应用程序并不立即至关重要。

期望的最终状态将是一个过程,我们可以针对从 IDE 级别(Eclipse 和 Netbeans)到发布级别(使用 CruiseControl 生成构建)的各种开发阶段进行调整。

注意:我知道 Eclipse 和 Netbeans 都内置了类似的检测方法,但这是一个 FindBugs 特定的问题。

4

1 回答 1

2

使用 Ant 任务的 FindBugs 部分

includeFilter

可选属性。它指定过滤器的文件名,指定报告哪些错误。请参阅第 8 章,过滤文件

从第 8 章开始:

但是,也可以使用过滤器来选择要专门报告的错误实例:

$ findbugs -textui -include myIncludeFilter.xml myApp.jar

  1. 通过指定它们的缩写来匹配所有类的某些测试。
 <Match>
     <Bug code="DE,UrF,SIC" />
 </Match></pre>

因此,我会假设以下内容:

<Match>
    <Bug code="Wa,NP" />
</Match>

在您的包含过滤器和

<findbugs includeFilter="path/to/includefilter.xml"...

将是您正在寻找的。

( path/to /includeFilteror excludeFilter) 可以是基于另一个属性的值设置的属性,该属性可能默认dev为常规构建、testCI 构建和deploy部署构建之类的值,并指定您希望或不希望看到的特定警告在每个阶段看到。

希望有帮助。

于 2010-11-19T16:48:14.617 回答