我的项目包含以下结构
<modules>
<module>A</module>
<module>B</module>
<module>plugins/C</module>
<module>plugins/D</module>
</modules>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.7.7.201606060606</version>
<executions>
<execution>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>report</id>
<phase>prepare-package</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
</executions>
</plugin>
我已经像这样配置了主pom
{{ set myvar = "<img src='{% theme('/img/logo.png') %}' />" }}
<div class='mylogo'>{% myvar|raw %}</div>
当我跑步&#34; mvn验证&#34; jacoco报告仅针对模块A&amp; B.对于模块插件/ C和插件/ D Jacoco未执行,因此没有报告。
答案 0 :(得分:0)
为你的插件文件夹添加另一个pom.xml,让它从你的父pom继承并定义C&amp; D作为子模块,从父pom中删除模块并添加插件文件夹。并且不要忘记从C&amp; C更改父母pom D到插件pom,应该这样做。
答案 1 :(得分:0)
这个问题不是关于jacoco-maven-plugin
,而是关于Maven中的aggregation和inheritance。
给定example/pom.xml
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>example</artifactId>
<version>0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
<module>A</module>
<module>plugins/C</module>
</modules>
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.7.7.201606060606</version>
<executions>
<execution>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>report</id>
<phase>prepare-package</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
指定example/A
和example/plugins/C
应该构建为example
的构建的一部分,但是没有指定任何关于插件,属性等的继承的继承。
对于来自example/plugins/C/pom.xml
的{{1}}中的继承,第一个应该将第二个声明为example/pom.xml
:
parent
在这种情况下,插件的配置将被继承,并且它们将被执行:
<project>
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.example</groupId>
<artifactId>example</artifactId>
<version>0.1-SNAPSHOT</version>
<relativePath>../..</relativePath>
</parent>
<groupId>org.example</groupId>
<artifactId>C</artifactId>
<version>0.1-SNAPSHOT</version>
</project>
P.S。截至今日版本的JaCoCo最新版本为0.7.9。