当我尝试将我的jar文件转换为exe文件时,当我运行它时出现错误。我在Eclipse中运行时的java文件效果很好。
启动应用程序时出错:
我已经使用了exe4j和Launch4j。
exe4j给出了这个错误:
java.lang.IllegalArgumentException: input == null!
at javax.imageio.ImageIO.read(Unknown Source)
at EasyExpress.<init>(EasyExpress.java:61)
at EasyExpress.main(EasyExpress.java:162)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
at com.exe4j.runtime.WinLauncher.main(Unknown Source)
答案 0 :(得分:1)
直接原因很可能是您使用Class.getResource
(或类似)从应用程序资源集合中获取映像。如果失败,则返回null
。然后,您已将null
传递给ImageIO.read
。因此,你看到的例外。
问题可能是以下之一:
这就是我要做的事。
exe
文件解决问题。exe4j
工具如何处理资源和资源加载。 (我对exe4j documentation的简要介绍没有强调任何明显的问题......)答案 1 :(得分:0)
如果您只想在eclipse之外运行它,那么您可以创建一个JAR文件。在eclipse中单击文件&gt;导出JAR&gt;选择Java JAR文件&gt;选择项目&gt;选择要保存的目的地。完成