0

注意:我确实尝试了ImageIcon background = new ImageIcon(getClass().getResource("MyImage.jpg")); 所有答案中提到的。

我的项目使用 netbeans IDE 运行正常。但是,一旦我使用“清理并构建”导出到可执行 jar,就会引发空指针异常,并且带有图像的框架甚至都不会打开。(executabe jar 在 'dist' 文件夹中)

即使使用相对路径,图像也永远不会加载。

  1. 我将图像放在与可执行 jar 相同的目录中。(dist)
  2. 我将图像放在 lib 文件夹中。(分布\库)
  3. 我创建了一个 src 和 res 文件夹并将图像放在这些文件夹中。(dist\src & dist\res)

以上都没有奏效。

我用winRar打开罐子,看到图像存在。但它永远不会在运行时加载。谁能帮帮我吗。??

4

1 回答 1

0

最后我想通了。

ImageIcon background = new ImageIcon(getClass().getClassLoader().getResource("MyImage.jpg"));

一些类加载器如何发挥巨大作用!

准确获取文件名也很重要。在 IDE 中运行,但在导出到 JAR 时,如果我们尝试访问.JPG ,它必须是自己的名称.jpgMyImage.jpg

于 2013-08-22T11:13:02.437 回答