Eclipse无法正确导出资源

时间:2015-12-26 14:30:33

标签: java eclipse resources export

当我从Java运行我的程序时,一切都很好。如果我将程序导出到可运行的.jar,则程序无法启动。 当我将资源文件夹与我的图片NEXT复制到可运行的.jar时,它确实启动了。资源文件夹通常位于我的src文件夹中。 可运行的jar确实包含带有图片的资源文件夹。 它位于包名称旁边的文件夹中。

我用过

Icon cancelIcon = new ImageIcon(this.getClass().getClassLoader().getResource("resources/cancelIcon.png"));

Icon cancelIcon = new ImageIcon(this.getClass().getResource("/resources/cancelIcon.png"));

导出后为什么我的程序无效?

2 个答案:

答案 0 :(得分:2)

问题是,eclipse不关心路径中的区分大小写,但导出的jar确实如此。 我有一个文件“animation.GIF”,在源代码中有“animation.gif”。 Eclipse没关心,罐子也没关心。

答案 1 :(得分:0)

  

当我将资源文件夹与我的图片NEXT复制到可运行的.jar时,它确实启动了。

这是因为当您导出runnable .jar时,它会在库处理

下为您提供三个选项
  • 将所需的库提取到生成的JAR
  • 将所需的库打包到生成的JAR中
  • 将所需的库复制到生成的JAR旁边的子文件夹

您可能选择了第3个,例如,为什么当您复制.jar旁边的子文件夹时,它运行正常....

我建议在导出时选择第一个(Extract ...),然后再次尝试运行.jar ....

您的resources文件夹(包含图片)应位于src文件夹中...并在java中设置imageIcon,您可以使用{{1像这样......

Toolkit

希望有所帮助......