我在我的Java应用程序中有一个类,读取位于src/main/resources中的资源文件夹。因此,在该类中,我将资源文件夹指定为:
public static final String RES_LOCATION = "./src/main/resources";
程序运行正常。但是,当我将其制作成jar并在另一个项目中使用它作为依赖项时,上述类会失败,因为它找不到资源文件夹。
有什么解决方案吗?
java.io.File
。getClass().getResourceAsStream("relative/class/path/to/resource");
您正在指定错误的资源路径,您需要像这样加载资源“public static final String RES_LOCATION =“resources””,因为src/main不会存在。
./src/main/resources
相关于您的项目结构,当您将代码打包成 .jar
文件时,这种结构是不同的。这两种结构非常不同,它可能会影响您访问文件的方式。
访问资源文件的最佳实践请参考此页面:https://www.mkyong.com/java/java-read-a-file-from-resources-folder/