我的源代码(my.properties
)文件夹中的src/main/resources
文件在我尝试运行JerseyTest
时被拾取并使用...而我想要的属性文件在要使用的测试文件夹(src/test/resources
)。
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
try {
myProperties.load(classLoader.getResourceAsStream("my.properties"));
}
如何在Maven中配置?
我正在使用:
maven-compiler-plugin
版本2.1
jersey-test-framework-grizzly2
版本1.13
更新(根据已接受的答案决定):
我注意到文字skip non existing resourceDirectory
:
[INFO] --- maven-resources-plugin:2.4.3:testResources (default-testResources) @ xxx ---
[WARNING] Using platform encoding (MacRoman actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /xxx/xxx/xxx/xxx/src/test/resources
事实证明我有错误拼写的资源,修好之后,所有内容都按照接受的答案中的说明进行操作。
虽然我在浪费时间寻找解决方法,但我确实找到了一些基于配置文件配置属性文件的有趣链接:
答案 0 :(得分:1)
从src/test/java
文件夹运行某些内容时,默认行为为:
src/main/resources
; src/test/resources
。{/ li>中存在同名文件外
所以基本上它会“覆盖”src/main/resources
的内容,内容为src/test/resources
:
src/test/resources
中的文件将占优势。src/main/resources
中获得了文件,则会使用该文件。src/test/resources
中获得了文件,则会使用该文件。