Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 导出后发生Eclipse错误_Java_Eclipse - Fatal编程技术网

Java 导出后发生Eclipse错误

Java 导出后发生Eclipse错误,java,eclipse,Java,Eclipse,我更新了我的项目代码,并使用Eclipse重新导出它,我在Eclipse中运行它,没有错误。但是,当我将其导出为可执行Jar文件时,“javaw.exe”在task manager中出现了一秒钟,然后消失了,因此我决定使用命令提示符启动它,并出现以下错误: 怎么了 谢谢。从外观上看,尝试加载图像时会出现异常。我猜图像在jar中,但您使用的构造函数采用字符串文件名。由于该文件在jar中,因此您不能以这种方式访问它。而是使用返回URL的getResource 你可以这样做: URL url = T

我更新了我的项目代码,并使用Eclipse重新导出它,我在Eclipse中运行它,没有错误。但是,当我将其导出为可执行Jar文件时,“javaw.exe”在task manager中出现了一秒钟,然后消失了,因此我决定使用命令提示符启动它,并出现以下错误:

怎么了


谢谢。

从外观上看,尝试加载图像时会出现异常。我猜图像在jar中,但您使用的构造函数采用字符串文件名。由于该文件在jar中,因此您不能以这种方式访问它。而是使用返回URL的
getResource

你可以这样做:

URL url = Thread.currentThread().getContextClassLoader().getResource('/path/to/your/image');
new ImageIcon(url);

问题是在
静态
块中出现了
NullPointerException
。为什么它现在抛出NullPointerException,而不是在Eclipse中?如果右键单击cmd标题栏,您可以选择以下选项:标记,选择文本,然后使用编辑选项复制文本…@Mr感谢您的建议!我的代码:静态URL creditsbuttonpic=start.class.getResource(“graphics//buttons//credits.png”)
静态JLabel credits=新JLabel(新图像图标(creditsbuttonpic))不需要双斜杠。此外,根据加载文件的位置,最好使用绝对文件路径(从
/
开始)-记住,在这种情况下,绝对文件路径仍然是相对于类路径的,而不是相对于文件系统的(例如,根目录是您的顶级类路径)。是的,它可以工作!谢谢,当使用\\而不是\时会有点混乱,反之亦然。