JAVA: 包括jar中的文件以及如何访问它们

JAVA: including files in jar and how to access them

我需要在导出的 jar 文件中包含一些图像文件,我搜索了一下并找到了 this and this 个答案,但我无法让它工作。

所以我的文件结构是:

root
-assets
--clean.png
-src
...

我按照建议将 assets 文件夹添加到构建路径,但是如果我解压缩 jar,文件不在 assets 文件夹中,而是在根目录中。

我尝试了以下代码:

InputStream i = getClass().getResourceAsStream("assets/clean.png");
InputStream i = getClass().getResourceAsStream("/assets/clean.png");
InputStream i = getClass().getResourceAsStream("clean.png");
InputStream i = getClass().getResourceAsStream("/clean.png");

但他们 none 工作,inull。我错过了什么?

我正在使用 Maven

您应该将文件添加到 Maven 资源目录 src/main/resourcessrc/test/resources 以进行测试。

文档:https://maven.apache.org/plugins/maven-resources-plugin/