概要
我的JUnit测试没有找到他们在执行期间需要的文件。
我使用Maven进行依赖关系管理和编译。
细节
测试用例所需的所有文件都位于:src / test / resources。
例如,src / test / resources / resourceFile.txt。
要访问资源,我使用以下代码:
URL url = getClass().getResource("/resourceFile.txt").getFile();
File file = new File(url);
但后来file.exists()返回false。我得到的错误是:
Tests in error:
myJUnitTestCase(tests.MyJUnitTestClass): /home/me/workspace/Project%20Name/target/test-classes/resourceFile.txt (No such file or directory)
注意,以下给出相同的错误(注意删除/前缀):
URL url = getClass().getClassLoader().getResource("resourceFile.txt").getFile();
File file = new File(url);
看起来好像来自src / test / resources的文件没有被复制到target / test-classes中。
有任何想法吗?
以下问题没有帮助
软件版本
Ubuntu 12.04
Apache Maven 2.2.1
Java 1.7.0
Eclipse(面向Web开发人员的Java EE IDE)Indigo Service Release 2
(截断)Maven POM
4.0.0
com.groupId
artifactId
jar
1.0-SNAPSHOT
name
name
target
target/classes
target/test-classes
src/main/java
src/test/java
src/main/resources
src/test/resources
org.apache.maven.plugins
maven-compiler-plugin
1.6
1.6
UTF-8
junit
junit
4.10
test