5

我正在导出一个包含两个目录的简单 java 项目;src 和图标。Icons 是一个包含三个 .png 文件的目录。

我正在使用 File -> Export 导出到可执行的 .jar 文件。导出工作正常,.jar 文件包含 Icon 目录。但是在部署项目时,我无法获得 .png 文件的正确路径。在开发过程中,我使用以下路径:

图标/图片.png

只要我在 Eclipse IDE 中运行,它就可以工作。如何获得图标的正确路径?

4

2 回答 2

6

您的代码正在 .jar 文件之外寻找图像。请尝试使用URL构造函数ImageIcon

Icon icon = new ImageIcon(getClass().getResource("Icons/picture.png"));

Class.getResource()

于 2009-02-26T22:26:28.820 回答
4

mmyers 是正确的,但请注意,这getClass().getResource()将加载相对于定义类的包的资源。我怀疑您的图标被打包在 jar 文件的根目录中,而不是相对于类本身。要从类路径的根目录获取资源,请尝试: getClass().getClassLoader().getResourceAsStream("Icons/picture.png")

于 2009-02-26T23:36:02.647 回答