Maven-FindBugs插件-从测试阶段排除
在我的maven设置中,findbugs插件运行良好。我已经将findbugs设置为在编译阶段执行。然而,我注意到它也在测试阶段运行,因为测试阶段也调用compile。因为我有一个运行所有目标的自动构建管道,所以我不需要在测试阶段运行findbugs。我试图用以下方法将findbugs排除在测试阶段之外,但还没有成功Maven-FindBugs插件-从测试阶段排除,maven,findbugs,pom.xml,Maven,Findbugs,Pom.xml,在我的maven设置中,findbugs插件运行良好。我已经将findbugs设置为在编译阶段执行。然而,我注意到它也在测试阶段运行,因为测试阶段也调用compile。因为我有一个运行所有目标的自动构建管道,所以我不需要在测试阶段运行findbugs。我试图用以下方法将findbugs排除在测试阶段之外,但还没有成功 <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>2.4.0</version>
<inherited>true</inherited>
<configuration>
<failOnError>${findbugs.failOnError}</failOnError>
<skip>${findbugs.skip}</skip>
<trace>${findbugs.trace}</trace>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
<execution>
<id>findbugs-test-compile</id>
<phase>test</phase>
<goals>
<goal>check</goal>
</goals>
<configuration>
<skip>true</skip>
</configuration>
</execution>
</executions>
</plugin>
org.codehaus.mojo
findbugs maven插件
2.4.0
真的
${findbugs.failOnError}
${findbugs.skip}
${findbugs.trace}
编译
检查
findbugs测试编译
测试
检查
真的
根据生命周期的运行情况,不会通过编译调用它。它只是在运行,因为您配置了两次执行,一次在测试阶段,一次在编译阶段。Findbugs通常应在报告区域(站点)运行。
只需执行一次:
<executions>
<execution>
<id>findbugs-test-compile</id>
<phase>test</phase>
<goals>
<goal>check</goal>
</goals>
<configuration>
<skip>true</skip>
</configuration>
</execution>
</executions>
findbugs测试编译
测试
检查
真的
你喜欢的那个。但我建议阅读原因,它应该运行在报告区(通过网站)只
更新:如果您只想在站点生成期间运行findbugs,而不只是将其从通常的构建区域中删除并放到报告区域中 它不会通过compile调用,因为它只是在运行,因为您配置了两次执行,一次在测试阶段,一次在编译阶段。Findbugs通常应在报告区域(站点)运行。 只需执行一次:
<executions>
<execution>
<id>findbugs-test-compile</id>
<phase>test</phase>
<goals>
<goal>check</goal>
</goals>
<configuration>
<skip>true</skip>
</configuration>
</execution>
</executions>
findbugs测试编译
测试
检查
真的
你喜欢的那个。但我建议阅读原因,它应该运行在报告区(通过网站)只
更新:如果您只想在站点生成期间运行findbugs,而不只是将其从通常的构建区域中删除并放到报告区域中 我在第二部分的测试阶段遇到了findbugs运行的问题。我添加了第二个,以便将其设置为测试阶段。换句话说,如果我删除了第二个,其中包含测试阶段,那么如果我发布mvn测试,findbugs仍将运行。问题是,为什么要在编译周期中运行findbugs?通常的用例是在站点生成期间运行它。简单的问题是:您想什么时候运行findbugs?感谢您花时间讨论这个问题。我想在编译期间运行它,这样如果发现新的bug,构建可能会失败。站点生成不是正常设置的一部分。我只生成网站,如果一切建设和通过所有测试正确。请注意,我的工作不是一个“站点”,而是一个后端服务器,因此在我的案例中,站点被严格用于生成项目信息和报告。基于此,我认为您应该使用编译后的“流程类”阶段。我在第二部分的测试阶段遇到了findbugs运行的问题。我添加了第二个,以便将其设置为测试阶段。换句话说,如果我删除了第二个,其中包含测试阶段,那么如果我发布mvn测试,findbugs仍将运行。问题是,为什么要在编译周期中运行findbugs?通常的用例是在站点生成期间运行它。简单的问题是:您想什么时候运行findbugs?感谢您花时间讨论这个问题。我想在编译期间运行它,这样如果发现新的bug,构建可能会失败。站点生成不是正常设置的一部分。我只生成网站,如果一切建设和通过所有测试正确。请注意,我的工作不是一个“站点”,而是一个后端服务器,因此在我的案例中,站点被严格用于生成项目信息和报告。基于此,我认为您应该使用“流程类”阶段,如果在编译之后使用。