18

将findbugs 插件添加到 maven 很容易,这样如果我这样做它就会运行

mvn site

但是,我希望它随时运行

mvn install

就像单元测试一样。也就是说,如果 findbugs 发现任何错误,我不希望安装成功。我有办法做到这一点吗?

4

2 回答 2

32

关于findbugs:check目标,文档写道:

如果源代码中存在任何 FindBugs 违规,则构建失败。默认情况下,XML 报告会在包含错误的目标目录中输出。要查看有关 FindBugs 选项的更多文档,请参阅 FindBugs 手册。

所以这正是您正在寻找的目标。您现在只需将检查目标绑定到安装 验证阶段(验证阶段发生在安装之前,实际上是为了运行任何检查以验证包是否有效并符合质量标准,所以我认为这是一个更好的选择):

<project>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>findbugs-maven-plugin</artifactId>
        <version>2.0.1</version>
        <configuration>
          <effort>Max</effort>
          <threshold>Low</threshold>
          <xmlOutput>true</xmlOutput>
        </configuration>
        <executions>
          <execution>
            <phase>verify</phase> 
            <goals>
              <goal>check</goal> 
            </goals>
          </execution>
        </executions>
      </plugin>
      ...
    </plugins>
    ...
  </build>
  ...
</project>

当然,调整配置以满足您的需求。

于 2009-10-29T01:52:23.873 回答
2
<build>
    <plugins>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>findbugs-maven-plugin</artifactId>
        <version>2.0</version>
        <configuration>
            ...
        </configuration>
    </plugins>
</build>

findbugs:检查目标

findbugs:违规检查

于 2009-10-29T01:09:29.153 回答