使用Maven,我可以通过更改我的POM的报告部分来生成Cobertura的多种不同类型的代码覆盖率报告...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<configuration>
<formats>
<format>html</format>
<format>xml</format>
</formats>
</configuration>
</plugin>
或者,我可以从Maven命令行生成单一类型的报告,ala ...
mvn clean cobertura:cobertura -Dcobertura.report.format=xml
如何从Maven命令行生成多种不同的报告类型?
显然,我只能做一个。 ...我在下面尝试了这个,它不起作用!
mvn clean cobertura:cobertura -Dcobertura.report.formats=xml,html
(注意:上述属性使用&#34;格式&#34;与&#34;格式&#34;。上述始终创建默认HTML报告而不会看到两种指定格式。我使用Maven 3.2.3和Cobertura插件版本2.0.3。)
请帮忙,我的Googol Fu失败了。 ......任何人都知道这是否可能?
答案 0 :(得分:3)
看起来不可能......
来自Sonatype博文Configuring Plugin Goals in Maven 3:
最新的Maven版本最终允许插件用户进行配置 来自命令行的集合或数组通过逗号分隔 字符串。
希望启用基于CLI的配置的插件作者 数组/集合只需要将表达式标记添加到它们的 参数注释。
/**
* The format of the report. (supports 'html' or 'xml'. defaults to 'html')
*
* @parameter expression="${cobertura.report.format}"
* @deprecated
*/
private String format;
/**
* The format of the report. (can be 'html' and/or 'xml'. defaults to 'html')
*
* @parameter
*/
private String[] formats = new String[] { "html" };
正如您所看到的,formats
没有expression
标记(与format
不同),因此无法从命令行进行配置。
我刚刚意识到我回答了错误的问题:)我回答的问题是&#34;如何从Maven命令行生成多种不同的报告类型使用&#39;格式&#39;选项强>?&#34 ;.但原始问题是&#34;如何从Maven命令行生成多种不同的报告类型?&#34;
实际上有一个简单的解决方法 - 运行maven两次(第二次没有clean
),如下所示:
mvn clean cobertura:cobertura -Dcobertura.report.format=xml
mvn cobertura:cobertura -Dcobertura.report.format=html