Maven Dependency Plugin:仅复制测试依赖项

时间:2015-12-01 16:09:17

标签: maven maven-dependency-plugin

我已经使用Maven Dependency插件在一个输出目录中汇集了我的项目的所有运行时依赖项。现在我想将所有其他测试依赖项组装在一个单独的目录中。

但是当我包含作用域test并排除compileruntime作用域时,它仍然总是复制所有编译依赖项。

有没有办法复制 其他测试依赖项?

我目前的配置:

<plugin>
     <artifactId>maven-dependency-plugin</artifactId>
     <executions>
        <execution>
           <id>copy-test-libs</id>
           <phase>generate-test-resources</phase>
           <goals><goal>copy-dependencies</goal></goals>
           <configuration>
              <outputDirectory>${project.build.directory}/test-libs</outputDirectory>
              <includeScope>test</includeScope>
              <excludeScope>compile</excludeScope>
              <excludeTransitive>true</excludeTransitive>
           </configuration>
        </execution>
     </executions>
</plugin>

1 个答案:

答案 0 :(得分:2)

默认情况下,includeScope参数为空,表示它包含所有范围,默认情况下excludeScope为空。

指定<includeScope>test</includeScope>时,表示您希望包含所有依赖项(所有范围)。此设置似乎与默认空值不同,我猜maven-dependency-plugin<excludeScope>在使用<includeScope>includeScope时都会混淆:它包含所有内容,但不排除指定的范围。< / p>

您需要删除excludeScope并让return "redirect:" + <URL in String> 完成它的工作。