Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.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
如何将src/test/java内容添加到已创建的输出maven jar中_Java_Maven 2_Maven Plugin_Dependency Management_Maven Jar Plugin - Fatal编程技术网

如何将src/test/java内容添加到已创建的输出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> &

我看到很多类似的问题。但无法使这项工作

到目前为止,我已经尝试过testresources和构建HelperMaven插件

此外,我在1个线程中阅读了如何编写自己的汇编插件来实现类似的功能

但是再发一次,看看是否有更干净的方法,我不知道

这是现有的代码,我必须修复它。问题是,当我在成功构建之后打开jar时,我无法在jar中找到src/test/java类。我们有一个maven构建助手maven插件和maven jar插件。但我仍然看不到其中的测试类

<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