相关疑难解决方法(0)

getResourceAsStream返回null

我正在我的Java项目的已编译JAR中的包中加载一个文本文件.相关目录结构如下:

/src/initialization/Lifepaths.txt
Run Code Online (Sandbox Code Playgroud)

用于加载文件的代码是:

public class Lifepaths {
    public static void execute() {
        System.out.println(Lifepaths.class.getClass().
            getResourceAsStream("/initialization/Lifepaths.txt"));
    }

    private Lifepaths() {}

    //This is temporary; will eventually be called from outside
    public static void main(String[] args) {execute();}
}
Run Code Online (Sandbox Code Playgroud)

null无论我使用什么,打印输出都会打印出来.我不确定为什么以上都行不通,所以我也尝试过:

  • "/src/initialization/Lifepaths.txt"
  • "initialization/Lifepaths.txt"
  • "Lifepaths.txt"

这些都不奏效. 了许多 问题至今的话题,但他们都不是有帮助的-通常情况下,他们只是说来加载使用根路径,这我已经在做的文件.那,或者只是从当前目录加载文件(只是加载filename),我也尝试过.该文件正在具有适当名称的适当位置编译到JAR中.

我该如何解决这个问题?

java file-io resources

163
推荐指数
9
解决办法
30万
查看次数

标签 统计

file-io ×1

java ×1

resources ×1