java maven故障保护插件。复制资源
在我的项目中,我创建了以下目录结构
src
-> main
-> java
-> resources
-> test
-> java
-> resources
-> integration-test
-> java
-> resources
在我的pom里。xml我做了以下输入
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.17</version>
<configuration>
<testSourceDirectory>src/integration-test/java</testSourceDirectory>
</configuration>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
如果我在src中复制资源->;测试->;资源它会自动成功复制到/target/test类。但是如果我将一个文件复制到/src/integration test/resources中,那么在构建时它不会被复制到目标/测试类中
如何使集成测试也将资源中的文件复制到目标中
# 1 楼答案
maven failsafe插件的
integration-test
目标默认绑定到integration-test
生命周期阶段:http://maven.apache.org/surefire/maven-failsafe-plugin/integration-test-mojo.html。因此,由于integration-test
阶段在process-test-sources
[1]之后(在此期间,测试源通常被复制到target
目录),并且因为我假设您所指的“构建时间”实际上是Eclipse的“自动构建”特性,您的集成测试源不会被复制,因为Eclipse构建会在test-compile
生命周期阶段停止您应该了解Maven lifecycle,以及如何将特定目标映射到适合您需求的生命周期阶段
[1]https://maven.apache.org/ref/3.3.9/maven-core/lifecycles.html