Maven 2 使用依赖项和测试依赖项创建jar

Maven 2 使用依赖项和测试依赖项创建jar,maven-2,Maven 2,如何(使用maven)构建一个包含测试类和测试依赖项的jar 我知道如何创建一个jar,其中包含类的依赖项(使用汇编插件)和“main”类的依赖项,但我需要测试类和测试依赖项 我知道我可以使用jar插件来创建一个包含测试类的jar,但它不包含测试依赖项 TIA您可以通过将maven dependency plugin:copyDependencies与assembly插件相结合来实现 <plugin> <groupId>org.apache.maven.plugins

如何(使用maven)构建一个包含测试类和测试依赖项的jar

我知道如何创建一个jar,其中包含类的依赖项(使用汇编插件)和“main”类的依赖项,但我需要测试类和测试依赖项

我知道我可以使用jar插件来创建一个包含测试类的jar,但它不包含测试依赖项


TIA

您可以通过将maven dependency plugin:copyDependencies与assembly插件相结合来实现

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-dependency-plugin</artifactId>
  <executions>
    <execution>
      <id>copy-dependencies</id>
      <phase>process-resources</phase>
      <goals>
        <goal>copy-dependencies</goal>
      </goals>
      <configuration> <!-- by default all scopes are included -->
        <!-- copy all deps to target/lib -->
        <outputDirectory>${project.build.directory}/lib</outputDirectory>
      </configuration>
    </execution>
  </executions>
</plugin>
<plugin>
  <artifactId>maven-assembly-plugin</artifactId>
  ...
</plugin>

org.apache.maven.plugins
maven依赖插件
复制依赖项
过程资源
复制依赖项
${project.build.directory}/lib
maven汇编插件
...
您的描述符:

<assembly>
  <fileSets>
    <fileSet>
      <directory>${project.build.directory}/lib</directory>
      <outputDirectory>/</outputDirectory>
      <includes>
        <include>*.*</include>
      </includes>
    </fileSet>
  </fileSets>
</assembly>

${project.build.directory}/lib
/
*.*

谢谢,这很管用。我确实需要这些类,所以我将使用unpack dependencies在进一步研究汇编插件之后,我注意到我可以使用scope=test和unpack=true定义dependencySet。这实际上与依赖插件的作用相同。