我在运行以下代码时遇到问题:
configService.setMainConfig("src/test/resources/MainConfig.xml");
从Junit @Before方法中。
这是Maven建立目标文件夹的方式吗?
MainConfig.xml直接访问。该src/test/resources目录内容被放置在你的CLASSPATH的根。
MainConfig.xml
src/test/resources
更准确地说:的内容src/test/resources被复制到中target/test-classes,因此,如果您具有以下项目结构:
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()。
getClass().getResource("/MainConfig.xml").getFile()