Java 在使用 getClass().getResource() 加载图像时抛出 NullPointerExcepti



我有一个小程序,我试图在打包到 jar 文件后嵌入到 html 文件中。

图像在主小程序类中加载

,如下所示

return getImage(getClass().getResource("/../content/"+path));

这在运行 eclipse 时有效,但当我将其导出到 jar 文件时,我得到一个空指针异常。我已经做了一些谷歌搜索,我尝试使用以下代码使用 getResourceAsStream

InputStream is = new BufferedInputStream(
                 getClass().getResourceAsStream("/../content/"+path));
return ImageIO.read(is);

但这在Eclipse中不起作用。

内容是图像的

顶级目录,路径是所需图像的指定路径。小程序位于名为 game 的文件夹中,该文件夹与内容处于同一级别

这是一个评论,现在我在这里回答了它(正如 OP 所说它确实有帮助):尝试将内容放入与访问内容的类相同的包中并相应地更改路径,看看是否有帮助。如果是这样,那就是你的路径有问题。

我遇到了同样的问题。但使用解决了它:-

<ClassName>.class.getClass().getResource(urlString);

希望这有帮助...

你可以试试这个。

getClass().getClassLoader().getResourceAsStream(name)

另外,你的路径看起来有点奇怪。/..基本上是指根目录的父目录,这不可能工作。

最新更新