Java 创意可以';如果项目使用maven,则无法在自定义测试源根目录下找到文件
在IDEA中,我有一个由maven管理的项目。我在“src”下为集成测试创建了一个名为“intg”的自定义目录: 在我的POM.xml中,我添加了:Java 创意可以';如果项目使用maven,则无法在自定义测试源根目录下找到文件,java,maven,intellij-idea,Java,Maven,Intellij Idea,在IDEA中,我有一个由maven管理的项目。我在“src”下为集成测试创建了一个名为“intg”的自定义目录: 在我的POM.xml中,我添加了: <build> <plugins> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>2.6</version>
<build>
<plugins>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<id>copy-resources</id>
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.basedir}/target/test-classes</outputDirectory>
<resources>
<resource>
<directory>${project.basedir}/src/intg/resources</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
不幸的是,测试失败了。如果我将“test data.txt”移动到“src/test/resources”,那么它将通过
我不确定哪里出了问题以及如何解决。它折磨了我一整天,请帮帮我~试试看:
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<id>add-resource</id>
<phase>generate-resources</phase>
<goals>
<goal>add-resource</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>${project.basedir}/src/intg/resources</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
org.codehaus.mojo
构建助手maven插件
1.8
添加资源
产生资源
添加资源
${project.basedir}/src/intg/resources
然后调用“生成资源并更新文件夹”,这是您应该坚持的第一步。但是如果你坚持按自己的方式去做。以下是您可以做到的: 1。更新您的pom.xml 将
src/intg/java
标记为源代码目录
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<includes><include>**/src/intg/java/**</include></includes>
</configuration>
</plugin>
</plugins>
<build>
<!--
<directory>target</directory>
<outputDirectory>target/classes</outputDirectory>
<finalName>${artifactId}-${version}</finalName>
<testOutputDirectory>target/test-classes</testOutputDirectory>
<sourceDirectory>src/main/java</sourceDirectory>
<scriptSourceDirectory>src/main/scripts</scriptSourceDirectory>
<testSourceDirectory>src/test/java</testSourceDirectory>
-->
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/intg/resources</directory>
</resource>
</resources>
<!--testResources>
<testResource>
<directory>src/test/resources</directory>
</testResource>
</testResources-->
</build>
2。设置您的创意项目
- 右键单击
并将目录标记为源根目录src/intg/java
- 右键单击
并将目录标记为源根目录src/intg/resources
就这样,你们都准备好了。Maven和Idea Junit测试都应该编译并运行。我已经解释了Idea如何在中处理资源。您的问题可能是由以下原因引起的。
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<includes><include>**/src/intg/java/**</include></includes>
</configuration>
</plugin>
</plugins>
<build>
<!--
<directory>target</directory>
<outputDirectory>target/classes</outputDirectory>
<finalName>${artifactId}-${version}</finalName>
<testOutputDirectory>target/test-classes</testOutputDirectory>
<sourceDirectory>src/main/java</sourceDirectory>
<scriptSourceDirectory>src/main/scripts</scriptSourceDirectory>
<testSourceDirectory>src/test/java</testSourceDirectory>
-->
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/intg/resources</directory>
</resource>
</resources>
<!--testResources>
<testResource>
<directory>src/test/resources</directory>
</testResource>
</testResources-->
</build>