java - Maven 资源文件夹

标签 java maven

嘿, 我想在 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/

相关文章:

maven - 我应该为 jar commons-lang.jar 使用哪个 pom 依赖项

java - Android - notifyDataSetChanged() 不工作

java - Java 中声明和初始化数组有什么区别?

java - 构建 AWS 开发工具包 Jar 以导入单个包

maven - 使用 dockerfile-maven-plugin 标记创建的图像

java - 在本地 maven 存储库中安装多个 jar 文件

java - 防止从 Git 存储库 pull 时需要 "add external jars"

java - 将字符串传递给另一个类

java - 生成复杂的树状 JSON 响应

java - 动态规划入门——贪心找币求助