.jar 文件找不到图像文件路径



我正在创建一个简单的程序,现在我想将其导出为可执行的jar文件。一切正常,只是jar文件找不到图像。

为了创建可运行的JAR文件,我使用了Eclipse 2021-12中的第二个选项(将所需的库打包到生成的JAR中(。这似乎运行得很好,因为我只有jar,没有运行程序所需的其他文件夹。

我的jar文件结构如下:
jar_file/
├─图像/
│ ├─frog.png

我已经尝试了多种获取图像文件的方法。

这就是我如何定义图标:
private static Image icon;

使用toURI((和toString((

icon = Toolkit.getDefaultToolkit().getImage(getClass().getResource("/images/frog.png").toURI().toString());

Eclipse

这在Eclipse中不起作用。

路径输出:file:/C:/Projekte/serviceticketapp/target/classes/images/frog.png

Jar文件

这在Jar文件中不起作用。

路径输出:rsrc:images/frog.png

使用toExternalForm((

icon = Toolkit.getDefaultToolkit().getImage(getClass().getResource("/images/frog.png").toExternalForm());

Eclipse

这在Eclipse中不起作用。

路径输出:file:/C:/Projekte/serviceticketapp/target/classes/images/frog.png

Jar文件

这在Jar文件中不起作用。

路径输出:rsrc:images/frog.png

使用File和toURI((

File imageFile = new File(getClass().getResource("/images/frog.png").toURI());icon = Toolkit.getDefaultToolkit().getImage(imageFile.getAbsolutePath());

Eclipse

这在Eclipse中有效。

路径输出:C:Projekteserviceticketapptargetclassesimagesfrog.png

Jar文件

抛出错误。

java.lang.IllegalArgumentException: URI is not hierarchical

摘要

在上面你可以看到我试图获得图像文件的所有方式。只有一个在Eclipse中工作,而它们都不在jar文件中工作。

我做错了什么,或者我必须如何排列文件才能在jar文件和Eclipse中工作。

请询问您是否需要更多信息。提前谢谢。

我会使用imagio(import javax.imageio.ImageIO(

tIcon = new TrayIcon(ImageIO.read(getClass().getResource("/images/frog.png"), "Service Ticket App");

相关内容

  • 没有找到相关文章

最新更新