当前位置: 首页 > 知识库问答 >
问题:

导出的JAR文件不显示图像

赵晟睿
2023-03-14

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

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

代码中的图像参照如下:

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

但是,在我将项目导出到JAR文件后(通过使用导出-

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

共有3个答案

史承福
2023-03-14

我想我找到解决办法了:

替换这个

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

具有

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

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

相化
2023-03-14

解决方案是使用绝对路径

new ImageIcon("/settings.gif");

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

那就会是

new ImageIcon("/res/settings.gif");
常永怡
2023-03-14

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

如果您在Eclipse中进行调试,您就可以让它工作,因为主目录将是项目的根目录,res/文件夹实际上存在于此。

 类似资料:
  • 我在下面的帖子中提到了这个问题和我的答案:来自Apache FOP 1.1和Java的PDF图像。我试图在每页上显示背景图像(有点像水印): 我让它在我的机器上从Eclipse和导出的jar中工作,如上面提到的帖子所述,但它不适用于我以外的机器。它总是说不支持该格式。 我正在使用 FOP 网站上的 FOP 1.1 罐子,并将它们全部添加到我的锁片中。也将它们与罐子一起导出。我没有解决方案的想法了。

  • 我有一个netbeansjavagui项目。它包含用于图像的java文件和文件夹。我的项目中最重要的一部分是通过单击按钮来显示图像,比如说单击“下一步”按钮。当我点击“下一步”按钮时,图像将从IMG文件夹中逐个显示。我将图像放在标签中,如下所示: 我运行了这个程序,到目前为止,它可以按照我的要求工作。 然后,我需要将项目创建到一个jar文件中。我使用Netbeans和这个来创建我的项目的JAR文件

  • 我一直在尝试使用Alerts研发App,但是导出jar后,应该显示在对话框中的图标不见了: 当我从Eclipse开始时,图标显示为: 我做错了什么?代码: 编辑:从命令行开始时,将打印以下错误: 通用域名格式。太阳javafx。css。样式管理器getCachedImage 警告:加载图像时出错:rsrc:对话框确认。巴布亚新几内亚 我不明白,为什么图像(可能)丢失了。

  • 我试过将图像定位到许多不同的地方,也试过不同的加载图像的方法,但没有一种方法奏效,我已经确保图像在导出的JAR文件中确实正确地出现。

  • 我编写了一个Java程序,当它运行时,我会将文件夹“items”中每个图像文件的名称添加到ArrayList中。 当我在eclipse中运行应用程序时,这很好。但只要我导出到一个可运行的JAR文件并运行它,就找不到图像并返回NullPointerException。 我尝试使用 getClass().getResource() 但无济于事。 这是我的包浏览器的样子,这是我导出的JAR的样子 从第二

  • 我已经用Eclipse创建了一个可运行的jar。在我的项目中,我有一个叫做问卷的文件夹,里面有一些我使用的文本文件。当我运行我的可运行jar时,它不起作用,除非我在与jar相同的文件夹中有文件夹调查表。我尝试了一些我在stackoverflow中读到的解决方案,比如将文件夹调查表添加为源文件夹,也可以从Properties->java build path->Libraries->add clas