Java Eclipse可以很好地运行我的程序,但是JAR文件不能

Java Eclipse可以很好地运行我的程序,但是JAR文件不能,java,eclipse,swing,jar,nullpointerexception,Java,Eclipse,Swing,Jar,Nullpointerexception,我有四门课在我的游戏中;Player.java、Game.java、Island.java和Map.java。基本上,这里有很多代码可以链接,但我的问题是,我的程序在eclipse中运行得很好,但是当我导出为jar并运行它时,没有打开任何东西,所以我用CMD打开它,它会给出错误 在CMD中输入: java -jar GameAlliansen.jar CMD的输出: javax.swing.ImageIcon处的线程“main”java.lang.NullPointerException中出现

我有四门课在我的游戏中;Player.java、Game.java、Island.java和Map.java。基本上,这里有很多代码可以链接,但我的问题是,我的程序在eclipse中运行得很好,但是当我导出为jar并运行它时,没有打开任何东西,所以我用CMD打开它,它会给出错误

在CMD中输入:

java -jar GameAlliansen.jar
CMD的输出:

javax.swing.ImageIcon处的线程“main”java.lang.NullPointerException中出现异常

这就是我导入图像的方式

 island = new ImageIcon(Game.class.getResource("/Island(64x64).png"));
这是我的项目形象

将代码更改为:

Icon island =new ImageIcon(ImageIO.read(getClass().getResource("/Island(64x64).png")));   

导出时,创建一个文件夹,将jar文件和图像岛(64x64)放在其中。png

jar中的路径区分大小写,而不是所有文件系统都区分大小写(例如Windows使用的文件系统只区分大小写,不区分大小写)。您试图加载“Island(64x64.png)”,但图像显示实际文件名为“Island(64x64.png)”。将这些更改为匹配。

1。jar中是否包含该文件?2.它的大小写是否正确?@Lurr123请参阅,jar文件中是否已导出孤岛(64x64).png?如果它在jar文件中的位置是什么?更多的例子。我将发布我的组织是如何完成的。好吧,我不想这样做,我的意思是只需要在jar中包含图像就可以上传它,这样人们就可以只下载一个文件。改变了,同样的问题在eclipse中有效,但当我作为可运行的jar在eclipse之外运行时就不行了