我正在导出一个包含两个目录的简单 java 项目;src 和图标。Icons 是一个包含三个 .png 文件的目录。
我正在使用 File -> Export 导出到可执行的 .jar 文件。导出工作正常,.jar 文件包含 Icon 目录。但是在部署项目时,我无法获得 .png 文件的正确路径。在开发过程中,我使用以下路径:
图标/图片.png
只要我在 Eclipse IDE 中运行,它就可以工作。如何获得图标的正确路径?
我正在导出一个包含两个目录的简单 java 项目;src 和图标。Icons 是一个包含三个 .png 文件的目录。
我正在使用 File -> Export 导出到可执行的 .jar 文件。导出工作正常,.jar 文件包含 Icon 目录。但是在部署项目时,我无法获得 .png 文件的正确路径。在开发过程中,我使用以下路径:
图标/图片.png
只要我在 Eclipse IDE 中运行,它就可以工作。如何获得图标的正确路径?
您的代码正在 .jar 文件之外寻找图像。请尝试使用URL构造函数。ImageIcon
Icon icon = new ImageIcon(getClass().getResource("Icons/picture.png"));
mmyers 是正确的,但请注意,这getClass().getResource()
将加载相对于定义类的包的资源。我怀疑您的图标被打包在 jar 文件的根目录中,而不是相对于类本身。要从类路径的根目录获取资源,请尝试:
getClass().getClassLoader().getResourceAsStream("Icons/picture.png")