我在运行以下代码时遇到问题:
configService.setMainConfig("src/test/resources/MainConfig.xml");
从Junit @Before方法中。
这是Maven建立目标文件夹的方式吗?
最佳答案
直接访问MainConfig.xml
。 src/test/resources
目录的内容位于CLASSPATH的根目录中。
更准确地说:src/test/resources
的内容被复制到target/test-classes
中,因此如果您具有以下项目结构:
.
└── src
└── test
├── java
│ └── foo
│ └── C.java
└── resources
├── a.xml
└── foo
└── b.xml
它将得到以下测试CLASSPATH内容:
/foo/C.class
/a.xml
/foo/b.xml
要实际从Java源访问文件,请使用
getClass().getResource("/MainConfig.xml").getFile()
。