嘿, 我想在 Maven 项目中获取资源文件夹(例如:C:\Users\Raul\workspace\Serial\src\test\resources),但每次运行此 java 代码时:
System.out.println(getClass().getResource("").getPath());
它返回我这条路径:C:/Users/Raul/workspace/Serial/target/test-classes/
我上次使用 Maven 时就是这样工作的,没有做任何改变。 提前谢谢。
最佳答案
通过典型设置,Maven 将资源复制到 target/classes
(或 target/test-classes
)目录。此外,target/classes
(或target/test-classes
)目录也会添加到类路径中。
如果您有一个文件 src/test/resources/foo.txt
,那么您可以使用 getResource("/foo.txt")
访问该文件。
一般来说,您不希望代码引用源文件夹来访问资源。资源可能会放置在多个位置,并且“过滤”资源(用构建属性值替换 token )是很常见的。在过滤的情况下,你绝对不希望处理后的资源文件位于源目录中。
关于java - Maven 资源文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38380083/