Maven 2 在多个生命周期中运行maven目标
我想在验证阶段和报告阶段都运行cobertura插件。我有两个配置文件,它们都应该运行cobertura插件,但在配置文件A中,我只想创建xml/html输出,但在配置文件B中,我将生成包含这些结果的完整站点文档 我已经将cobertura配置为作为验证阶段的一部分运行的插件,但是如果我这样做,即使我运行mvn验证站点,cobertura报告也不会出现在站点文档中。似乎我需要在插件和报告部分列出它(因为我不会在概要文件A中运行站点,如果我只在插件中有它,它就不会在该概要文件中被调用)。到目前为止,我的POM的插件部分包括:Maven 2 在多个生命周期中运行maven目标,maven-2,plugins,profile,Maven 2,Plugins,Profile,我想在验证阶段和报告阶段都运行cobertura插件。我有两个配置文件,它们都应该运行cobertura插件,但在配置文件A中,我只想创建xml/html输出,但在配置文件B中,我将生成包含这些结果的完整站点文档 我已经将cobertura配置为作为验证阶段的一部分运行的插件,但是如果我这样做,即使我运行mvn验证站点,cobertura报告也不会出现在站点文档中。似乎我需要在插件和报告部分列出它(因为我不会在概要文件A中运行站点,如果我只在插件中有它,它就不会在该概要文件中被调用)。到目前为止
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin </artifactId>
<version>2.2</version>
<configuration>
<instrumentation>
<excludes>
<exclude>com/somepkg/**</exclude>
</excludes>
</instrumentation>
<formats>
<format>xml</format>
<format>html</format>
</formats>
</configuration>
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>cobertura</goal>
</goals>
</execution>
</executions>
</plugin>
org.codehaus.mojo
cobertura maven插件
2.2
com/somepkg/**
xml
html
验证
科贝图拉
我不想把它也复制到报告部分,因为这有很多重复的地方。有没有一个好的方法来实现这一点
谢谢
杰夫定义如下:
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>cobertura</goal>
</goals>
</execution>
<execution>
<phase>pre-site</phase>
<goals>
<goal>cobertura</goal>
</goals>
</execution>
</executions>
验证
科贝图拉
现场前
科贝图拉
再看一眼,maven是否有一个称为报告的阶段。它似乎没有像我预期的那样工作……正确,据我所知,它正在报告站点生成中发生的情况。我发现,如果我只是将插件放在报告部分和其他构建中,我只是从命令行运行目标,效果最好。唯一的问题是,当我从命令行执行时,我似乎无法指定要使用的版本。我希望它能从报告插件中找到它,但它没有。有没有办法解决这个问题?仅供参考-我已经创建了属性来管理版本。我仍然需要列出这两个地方的插件(插件和报告),但是配置是自动从报告部分提取的,但是版本不是。所以我在这两个地方列出了插件groupId、artifactId和version(version是一个属性)