我一直在尝试将我的项目导出为Runnable Jar,但我的资源无法加载,因为我直接尝试从项目的路径访问图像。例如:
ImageIcon icon = new ImageIcon("resources/icon.png");
当我从Eclipse本身运行项目时,这将起作用,但我注意到图像没有包含在jar文件中。所以在研究之后,我发现我需要创建源文件夹并将图像/文本文件放在其中,然后使用getClass()。getResource()来访问它们。但是,当我这样做时,URL总是返回为null。
供参考,这是我的项目资源管理器的样子:
Test
---src
---resources
---icon.png
---config
---file.ini
这是在尝试访问icon.png时给我一个NullPointerException的代码:
ImageIcon icon = getClass().getResource("/resources/icon.png");
或者,我也尝试过:
ImageIcon icon = getClass().getClassLoader().getResource("resources/icon.png");
但这也会导致NullPointerException。我在网上查了很多解决方案,但似乎没有一个对我有用。请注意,我还需要能够访问.ini文件,因此仅适用于图像的解决方案无法完全解决我的问题。非常感谢任何帮助,谢谢。
答案 0 :(得分:0)
您的结构需要:
TEST
-SRC
-Resources
-icon.png
您的代码现在的方式是没有图像,因为您的代码引用/ src / resources而不是test / resources