【发布时间】:2018-10-10 10:15:03
【问题描述】:
我觉得我已经尝试了一切。这些是我尝试过的代码的一些示例,它们在 IDE 中运行得非常好,但是一旦它被打包到一个 jar 文件中,它就会分崩离析。每个文件都在同一级别并打包在 jar 文件中。我用 WinRar 打开它,看到图像“c3.png”完全在里面,就在我的 Main-Class 旁边,在 Jar 的根目录中。
C3 = new ImageIcon( getClass().getResource("c3.png") );
.
C3 = new ImageIcon( this.getClass().getResource("c3.png") );
.
C3 = new ImageIcon( ImageIO.read( getClass().getResource("c3.png") );
.
C3 = new ImageIcon( ImageIO.read( ClassLoader.getSystemClassLoader().getResourceAsStream( "c3.png" ) ) );
.
C3 = new ImageIcon( ImageIO.read( getClass().getClassLoader().getResource( "C3.png" ) ) );
编辑:我尝试了更多……当然……失败了。
C3 = new ImageIcon(VP2CPConverter.class.getResource("/C3.png"));
.
C3 = new ImageIcon( VP2CPConverter.class.getClassLoader().getResource( "C3.png" ) );
在一次简短的故障排除尝试中,我什至尝试了 getResourceAsStream() 来找出 Jar 执行时可用的所有资源。在 IDE 内部,所有这些。在罐子里……没有。
现在有人向我开枪。
【问题讨论】:
-
你用什么工具来生成jar文件?
-
问题已编辑并删除。最好显示更多相关信息,包括(如果需要)类的可视化结构、堆栈跟踪、错误行、minimal reproducible example。
-
您能否分享堆栈跟踪或错误,这可能真的有助于解决您的问题。
-
@HovercraftFullOfEels 您知道,现有问题中列出的解决方案与我上面列出的尝试完全相同。
-
@BadshahTracker 与清单文件无关。
标签: java jar nullpointerexception getresource null-pointer