【发布时间】:2016-11-21 12:59:13
【问题描述】:
我正在尝试为我的项目生成一个可运行的 jar 文件,该文件具有 JavaFx gui。 该项目在 Eclipse 中运行得更好,但是当我尝试运行 jar 时:
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
...Caused by: java.lang.NullPointerException: Input stream must not be null
图片代码如下:
private Image image1 = new Image(this.getClass().getResourceAsStream("../pic/classic/image1.png"));
我需要更改什么,以便我可以毫无例外地运行我的 jar 文件。
感谢您的帮助。
【问题讨论】:
-
不要在字符串中使用
..。如果父包中有类,则将其用作资源的引用:SomeClassInParentPackage.class.getResourceAsStream("pic/classic/image1.png")否则,只需使用根相对资源路径引用资源:"/com/example/app/pic/classic/image1.png" -
"编辑:感谢您对第一个问题的帮助。另一个问题我怎么能..." 不,你得到了问题的答案。不要编辑您的问题以添加更多问题。出于这个原因,我回滚了那个编辑。您仍然可以在这里找到您的内容:stackoverflow.com/posts/38444852/revisions。请提出一个新问题。另外,如果答案对您有用,请考虑接受它。