Java .Jar图像不显示

时间:2011-09-18 03:08:34

标签: java eclipse resources jar

我在Java中创建了一个应用程序(使用Eclipse IDE),我在代码中引用了存储在名为“source”的源文件夹中的图像,它在IDE中运行良好。当我将jar解压缩到一个可运行的jar时,没有错误,但是图片没有出现,或者如果它只是显示它背后的任何东西。我在WinRar中打开了.jar,看起来这些图片都被类文件抛出。我该如何解决这个问题?

Image i = Toolkit.getDefaultToolkit().getImage("sources/SystemTrayOne.png");

2 个答案:

答案 0 :(得分:4)

您正在尝试获取Jar中不存在的文件。而是通过Class#getResource(...)

获取网址

如,

URL imgUrl = getClass().getResource(....); // resource name here
Image i = Toolkit.getDefaultToolkit().getImage(imgUrl);

或更好

URL imgUrl = getClass().getResource(....); // resource name here
Image i = ImageIO.read(imgUrl);

答案 1 :(得分:2)

直到昨天我也面临同样的问题。我已经解决了这个问题。让我与你分享。

  • 在Eclipse中,转到项目名称。
  • 正确的项目名称。
  • 新 - >源文件/文件夹
  • 将此源文件/文件夹命名为images
  • 现在,在本地计算机上,转到项目所在的Eclipse工作区 实际存在。
  • 将您的所有图片复制到新创建的图像'文件夹就在那里。
  • 现在回到Eclipse。
  • 右键点击您的项目 - >刷新
  • 现在,无论您在.java文件中使用图像,请转到这些行并在图像位置前加上images /

示例:XXX xxx = XXXX(example.jpg)更改为.... XXX xxx = XXXX(images / example.jpg)

BOOM !!运行.jar文件时将显示图像。

注意:不要使用java -jar AppName.jar从cmd运行.jar文件而是双击.jar文件,您将看到图像。

如果它对你有用,请亲自投票。 :)