【发布时间】:2013-06-05 17:43:21
【问题描述】:
我正在尝试制作一个 jar,但程序需要图像。当我运行罐子时,图像没有出现。然而,他们在日食中做到了。我使用了这段代码:
label.setIcon(new ImageIcon("res/img/icon.png"));
然后我在互联网上寻找修复它的方法。我在 StackOverflow 上找到了this 问题,但是当我在我的代码中尝试它时,它抛出了一个NullPointerException(也在 eclipse 中)。这是我现在的代码:
label.setIcon(new ImageIcon(getClass().getResource("/res/img/icon.png")));
图像位于包中一个单独的文件夹中,称为“res”:
【问题讨论】:
-
确保图像实际上在 Jar 中,并且在 res/img/ 目录中。你的语法看起来不错
-
您的
res在哪里?它必须在你的类路径下 -
你应该像这样截图:stackoverflow.com/a/13695798/1834700
-
@Casper van Battum 哦,伙计,您的路径不正确,您应该立即将
res文件夹移动到src文件夹! -
您不必在 src 中移动 res。您只需对 Eclipse 说 res 是一个源文件夹,因此将包含在 jar 中(项目属性 > Java 构建路径 > 源选项卡 > 添加文件夹)。在树形视图中,您会看到文件夹图标将变为带有包的文件夹。