生成JAR文件后JFrame设计有变化吗?图像缺失

时间:2015-02-13 11:44:18

标签: java swing netbeans jar embedded-resource

我对Swing(或者netBeans)有一点问题,我正在进行测试JFrame,我用这行代码用图像改变了它的背景:

this.setContentPane(new JLabel(new ImageIcon(ImageIO.read(new File("src/testdesign/BG.png")))));

我使用netBeans向框架添加了JLabel Icon。 编译项目时的结果(在I​​DE中)是:

enter image description here

一切都很好..但是当我生成一个JAR文件时,结果是:

enter image description here

我不是Java专业人士,所以我认为改变背景的方式不是正确的方式,或者可能是另一回事。

1 个答案:

答案 0 :(得分:2)

您使用不正确的方式加载背景图片。在您的代码映像中,位置取决于项目目录src。您应该从类路径加载图像,但文件系统。你Class.getResource方法来修复它,例如:

this.setContentPane(new JLabel(new ImageIcon(getClass().getResource(pathToImage))));