Jar文件资源不可用?

Jar文件资源不可用?,jar,Jar,我的程序有以下几行代码,从Netbeans运行时运行良好 JButton Button_1=新的JButton(新的图像图标(Phone_Dialer.class.getResource(“Dir_Icons/”+“Key_1”+Botton_Color+“.gif”)) 但是当我从结果Jar文件运行它时,这一行导致了“java.lang.NullPointerException”错误,为什么 目录是这样的: C:\Phone_Dialer\src\Phone_Dialer.java C:\Ph

我的程序有以下几行代码,从Netbeans运行时运行良好

JButton Button_1=新的JButton(新的图像图标(Phone_Dialer.class.getResource(“Dir_Icons/”+“Key_1”+Botton_Color+“.gif”))

但是当我从结果Jar文件运行它时,这一行导致了“java.lang.NullPointerException”错误,为什么

目录是这样的:

C:\Phone_Dialer\src\Phone_Dialer.java
C:\Phone_Dialer\src\Dir_Icons\Key_1_Silver.gif
C:\Phone_Dialer\dist\Phone_Dialer.jar
===========================================================================================
这绝对不是“Botton_Color”的问题,它是一个类似这样的字符串:“Silver”或“Pink”,因此如果我将上面的行更改为“
Dir_Icons\Key_1_Silver.gif
”,它在IDE中仍然可以正常工作,但无法从可执行的Jar文件运行,问题似乎是:为什么在Jar项目之后,它找不到资源。Jar文件由Netbeans生成,是可执行的。

熟悉IDE附带的调试器可能是个好主意。它将允许您逐步完成,这对于调试像这样的小问题非常有帮助,因为您可能不希望变量为null。因为没有堆栈跟踪,我猜Botton_颜色是空的。另外,它拼写错误。

我知道了,不知怎么的,声音文件后缀是大写的,现在我把它们改成小写,它可以工作了,谢谢

您能确认文件“Key\u 1\u Silver.gif”相对于“Phone\u Dialer.java”的位置吗?