无法在JAR文件中找到资源文件

3

我在我的Java应用程序中有一个类,读取位于src/main/resources中的资源文件夹。因此,在该类中,我将资源文件夹指定为:

public static final String RES_LOCATION = "./src/main/resources";

程序运行正常。但是,当我将其制作成jar并在另一个项目中使用它作为依赖项时,上述类会失败,因为它找不到资源文件夹。
有什么解决方案吗?
3个回答

4
你需要将该目录中的特定文件作为类路径资源读取,而不是使用java.io.File
getClass().getResourceAsStream("relative/class/path/to/resource");

如果我想加载特定扩展名的文件,你有什么建议? - awesomemypro
使用相同的技术,但将完整文件路径放入类路径并与cp相关联。因此,在此示例中将“resource”替换为“1.txt” - jmj

0

您正在指定错误的资源路径,您需要像这样加载资源“public static final String RES_LOCATION =“resources””,因为src/main不会存在。


问题是,我需要获取资源文件夹(src/main/resource)的名称,并根据特定扩展名列出该文件夹中的所有文件。在jar包中如何实现这一点? - awesomemypro

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接