Maven在构建失败/FindBugs时执行目标
我集成了FindBugs插件,以防出现bug时使构建失败。Maven在构建失败/FindBugs时执行目标,maven,maven-3,findbugs,Maven,Maven 3,Findbugs,我集成了FindBugs插件,以防出现bug时使构建失败。 然后使用它,我配置FindBugs生成html报告(xml版本几乎不可读)。 问题是我将failOnError属性设置为true,这意味着如果出现错误,构建将失败 ..... <configuration> ..... <failOnError>true</failOnError> </configuration> 。。。。。 ..... 真的 然
然后使用它,我配置FindBugs生成html报告(xml版本几乎不可读)。
问题是我将
failOnError
属性设置为true
,这意味着如果出现错误,构建将失败
.....
<configuration>
.....
<failOnError>true</failOnError>
</configuration>
。。。。。
.....
真的
然后不会生成html报告
我读过,没有“失败时执行”(比如Java中的finally
block)。那么,有什么可行的解决办法吗?
这难道不是开箱即用的Maven功能吗?特别感谢@SpaceTrucker的解决方案。 以下是我最终得到的配置:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>3.0.4</version>
<configuration>
<effort>Max</effort>
<threshold>Low</threshold>
<findbugsXmlOutputDirectory>${project.build.directory}/findbugs</findbugsXmlOutputDirectory>
</configuration>
<executions>
<execution>
<id>noFailOnError</id>
<phase>verify</phase>
<goals>
<goal>check</goal>
</goals>
<configuration>
<failOnError>false</failOnError>
</configuration>
</execution>
<execution>
<id>failOnError</id>
<phase>install</phase>
<goals>
<goal>check</goal>
</goals>
<configuration>
<failOnError>true</failOnError>
</configuration>
</execution>
</executions>
</plugin>
org.codehaus.mojo
转换(到html)在verify
阶段执行
问题是html报告生成
只需运行mvn findbugs:gui
即可查看结果。HTML报告由插件生成,这意味着如果插件发现错误,它将失败。因此,如果您喜欢让插件生成独立于失败的html报告,那么您应该为plugin@khmarbaise提交一个问题,我想在这种情况下,请求生成html报告比生成xml报告更容易。无论如何,这听起来像是一个耗时的解决方案。使用多个运行findbugs插件怎么样?在早期构建阶段,运行插件生成报告。在以后运行插件时,将failOnError
设置为true
。这将暂时降低构建速度,但您可以选择等待更好的解决方案。@SpaceTrucker感谢您的建议。我试试看。无论如何,我已经提交了该功能。@SpaceTrucker是的,你的解决方案有效,再次感谢你!总的构建时间增长并不是那么关键。那么,为什么不把它作为答案发布呢?)