即使图像存在,Runnable jar文件也找不到图像

时间:2018-04-07 17:28:00

标签: java jar export

尝试将项目导出到可运行的jar时,我遇到了一个非常奇怪的问题。我环顾四周,并在代码中对我如何获取图像进行了一些更改。

这是我用来获取图像的方法。

public static Image getImage(String name) {
    try {
        return ImageIO.read(Engine.class.getResourceAsStream("/" + name));
    } catch (IOException e) {
        System.out.println("ERROR: Couldn't load image" + name);
        e.printStackTrace();
        return null;
    }
}

当我通过命令提示符运行我的jar文件时,收到以下错误消息。

enter image description here

第81行包含

return ImageIO.read(Engine.class.getResourceAsStream("/" + name));

我首先认为错误是由于图像没有跟踪到jar文件,但我检查了归档管理器。 enter image description here

导致此错误出现的问题是什么?

3 个答案:

答案 0 :(得分:1)

问题在于你所指的路径。您的设置路径不是图像所在的方向(请参阅错误)。打印你的abusulte路径到那个文件夹,看看你错过了哪里。

答案 1 :(得分:0)

没有必要斜线。所以代码应该是这样的:

return ImageIO.read(Engine.class.getResourceAsStream(name));

答案 2 :(得分:0)

问题在于图像的命名。我曾写过" def"和" hov"用小写字母,而图像名称是" Def"和" Hov"。