我有以下项目结构:
- 项目“parent-project”没有任何源文件,并且具有子项目“junit-wrapper”、“child1-test”和“child2-test”。
- 子项目“junit-wrapper”在 src/main/java 中只有 java 源代码,它的创建基本上是为了将所有依赖项和二进制文件包装在层次结构“parent-project”下。
- 子项目“child1-test”和“child2-test”没有源文件,仅包含“child1-env”和“child2-env”子项目。
- 子项目“child1-env”和“child2-env”在 src/test/java 中只有 junit。
我想通过构建父pom.xml来构建一个 super jar(在junit-wrapper内)
我希望通过使用 maven-assemble-plugin 可以实现这一点,但不知道如何在 pom.xml 中配置它。为了确保实现这一目标,我的 pom.xml 或 assembly.xml(使用插件)条目应该是什么?
请提出建议。
谢谢。
最佳答案
要创建一个包含测试类的 jar,最好的解决方案是使用 maven-jar-plugin,如下所示:
<project>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
在其他模块中,您可以通过以下依赖项使用测试 jar:
<project>
...
<dependencies>
<dependency>
<groupId>com.myco.app</groupId>
<artifactId>foo</artifactId>
<version>1.0-SNAPSHOT</version>
<type>test-jar</type>
<scope>test</scope>
</dependency>
</dependencies>
...
</project>
关于java - 在这种情况下 maven-assemble-plugin 是否有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12730527/