gpt4 book ai didi

java - Jar 文件在解压后运行良好时无法使用 NullPointerException 执行

转载 作者:行者123 更新时间:2023-12-04 06:22:53 32 4
gpt4 key购买 nike

我正在尝试重构遗留应用程序并减少部署所需的步骤。
为此,我将所有类文件和资源打包到一个 jar 文件中。

我正在使用此命令来 jar 一切:

jar -cfm ../Deploy/JEmu.jar Manifest.txt *.class Resources/



我的 list 文件如下所示:
Manifest-Version: 1.0  
Created-By: 1.2.2 (Sun Microsystems Inc.)
Main-Class: JEmu
Name: JEmu.class

作为入口点的类是 JEmu.class,它打包在 jar 中,但是当我运行 jar 时,我收到此错误:
java -jar JEmu.jar
Exception in thread "main" java.lang.ExceptionInInitializerError
Caused by: java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(Unknown Source)
at ControlBar.<init>(ControlBar.java:88)
at JEmu.<clinit>(JEmu.java:85)
Could not find the main class: JEmu. Program will exit.

我不确定是什么原因造成的。

ControlBar 的第 88 行是:
stopButton = new JButton( new ImageIcon( classLoader.getResource("Resources/stop.gif")));

我做错了什么,当它没有打包成 jar 时一切正常?

最佳答案

classLoader.getResource("Resources/stop.gif")可能找不到指定的资源。发生这种情况时,它返回 null ,因此 NullPointerException .

关于java - Jar 文件在解压后运行良好时无法使用 NullPointerException 执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6348258/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com