如何将src/test/java内容添加到已创建的输出maven jar中
我看到很多类似的问题。但无法使这项工作 到目前为止,我已经尝试过testresources和构建HelperMaven插件 此外,我在1个线程中阅读了如何编写自己的汇编插件来实现类似的功能 但是再发一次,看看是否有更干净的方法,我不知道 这是现有的代码,我必须修复它。问题是,当我在成功构建之后打开jar时,我无法在jar中找到src/test/java类。我们有一个maven构建助手maven插件和maven jar插件。但我仍然看不到其中的测试类如何将src/test/java内容添加到已创建的输出maven jar中,java,maven-2,maven-plugin,dependency-management,maven-jar-plugin,Java,Maven 2,Maven Plugin,Dependency Management,Maven Jar Plugin,我看到很多类似的问题。但无法使这项工作 到目前为止,我已经尝试过testresources和构建HelperMaven插件 此外,我在1个线程中阅读了如何编写自己的汇编插件来实现类似的功能 但是再发一次,看看是否有更干净的方法,我不知道 这是现有的代码,我必须修复它。问题是,当我在成功构建之后打开jar时,我无法在jar中找到src/test/java类。我们有一个maven构建助手maven插件和maven jar插件。但我仍然看不到其中的测试类 <build> &
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>src/test/java</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<classifier>test</classifier>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
org.codehaus.mojo
构建助手maven插件
1.7
添加源
生成源
添加源
src/test/java
maven jar插件
2.3.1
包裹
罐子
测试
我在目标文件夹内的testclasses目录中看到生成的类。但不是在罐子里
我希望它们放在罐子里,因为我在另一个项目中依赖于这个罐子。另一个项目没有编译,因为它正在src/test/Java内部导入该测试类
我不能仅仅为这种情况创建一个新项目,因为我没有这种自由。您是否尝试了
maven依赖插件
(而不是buildhelper maven插件
)与maven jar插件
结合使用
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.9</version><!--$NO-MVN-MAN-VER$-->
<executions>
<execution>
<id>unpack</id>
<phase>prepare-package</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>you-project-group-id</groupId>
<artifactId>you-project-artifact-id</artifactId>
<version>${project.version}</version>
<type>test-jar</type>
<overWrite>false</overWrite>
<outputDirectory>${project.build.directory}/classes</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
org.apache.maven.plugins
maven依赖插件
2.9
打开
准备包装
打开
您需要项目组id
您需要项目工件id
${project.version}
试验罐
假的
${project.build.directory}/classes