导出的JAR文件不显示图像

时间:2015-04-23 14:56:34

标签: java eclipse jar

我在Eclipse中有一个Java项目。这是文件夹结构:

Eclipse folder structure

代码包位于src中,所有图像都在res文件夹中。

代码中的图像引用如下:

new ImageIcon("res/settings.gif");

但是,在将项目导出到JAR文件(通过使用Export - > Eclipse中的Runnable JAR文件)并运行JAR后,没有显示任何图像。如果我用WinRAR打开JAR,这就是它的结构:

JAR structure

所有图片都在根文件夹中,无法正确引用。如何正确引用图像,以便它们在Eclipse和导出的JAR中都可见?

3 个答案:

答案 0 :(得分:1)

.jar文件中未创建res/文件夹。它看起来资源位置不应该是"res/settings.gif"而是"/settings.gif"

如果在Eclipse中进行调试,则可以使用它,因为主目录将是项目的根目录,res/文件夹实际存在。

答案 1 :(得分:0)

解决方案是使用绝对路径

new ImageIcon("/settings.gif");

或确保将res文件夹复制到jar中。也许src / res或将文件夹标记为eclipse中的源文件夹;我现在在另一个IDE中。

那就是

new ImageIcon("/res/settings.gif");

答案 2 :(得分:0)

我想我找到了修复:

替换此

new ImageIcon("res/settings.gif");

new ImageIcon(this.getClass().getResource("/settings.gif"));

从Eclipse和可运行的JAR文件中运行。