Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Maven clover2触发重复类异常_Java_Maven_Clover - Fatal编程技术网

Java Maven clover2触发重复类异常

Java Maven clover2触发重复类异常,java,maven,clover,Java,Maven,Clover,这是关于JIRA在 该问题与JIRA仪表板上发布的问题类似,即: 我们有几个maven项目,它们有多个源目录。使用build helper插件添加非默认目录。clover2:setup目标检测所有源文件夹,然后将所有未生成的目录设置为maven项目上的源文件夹。这会导致编译错误,因为源文件既存在于clover检测的源中,也存在于原始位置 下面是我们如何使用buildhelpermaven插件 <plugin> <groupId>org.codehaus.mojo</

这是关于JIRA在

该问题与JIRA仪表板上发布的问题类似,即: 我们有几个maven项目,它们有多个源目录。使用build helper插件添加非默认目录。clover2:setup目标检测所有源文件夹,然后将所有未生成的目录设置为maven项目上的源文件夹。这会导致编译错误,因为源文件既存在于clover检测的源中,也存在于原始位置

下面是我们如何使用buildhelpermaven插件

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.9.1</version>
<executions>
<execution>
<id>add-shared-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>../SomeOtherModule1/src/main/java/com</source>
<source>../SomeOtherModule2/src/main/java/com</source>
<source>../SomeOtherModule3/src/main/java/com</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>

org.codehaus.mojo
构建助手maven插件
1.9.1
添加共享源
生成源
添加源
../SomeOtherModule1/src/main/java/com
../SomeOtherModule2/src/main/java/com
../SomeOtherModule3/src/main/java/com
这就是我们在构建概要文件中使用clover2插件的方式:

<plugin>
<groupId>com.atlassian.maven.plugins</groupId>
<artifactId>maven-clover2-plugin</artifactId>
<version>4.0.0</version>
<configuration combine.self="override">
<targetPercentage>$
{code_coverage_target}
</targetPercentage>
<licenseLocation>$
{clover_license_location}
</licenseLocation>
</configuration>
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>instrument-test</goal>
<goal>check</goal>
<goal>clover</goal>
</goals>
</execution>
</executions>
</plugin>

com.atlassian.maven.plugins
maven-clover2-plugin
4.0.0
$
{code_coverage_target}
$
{三叶草许可证位置}
验证
仪器测试
检查
三叶草
没有clover插件,构建的编译效果很好。但是在添加了clover插件之后,我们发现了几个错误,称发现了重复的类


我遗漏了什么吗?

我认为这是因为您使用的是clover2:instrument,而不是clover2:setup目标。clover2:instrument分叉定制构建生命周期,在此构建周期中,它在“验证”阶段执行检测。由于您的“添加源代码”目标绑定到生成源代码阶段,因此build helper maven插件在Clover之后而不是之前运行

我建议使用clover2:设置绑定到验证或初始化阶段(即在生成源之前)