这个问题已经在这里有一个答案:
- 访问图像路径在Eclipse 2个答案
我试图得到一个图像中的JPanel露面。 下面是我使用的代码:
URL imageURL;
BufferedImage image = null;
ImageIcon icon;
imageURL = getClass().getClassLoader().getResource("images/audiorpglogo.png");
if (imageURL == null) {
System.out.println(imageURL == null);
try { imageURL = new File("images/audiorpglogo.png").toURI().toURL(); }
catch (Exception e1) { imageURL = null; }
}
System.out.println(imageURL == null);
try { image = ImageIO.read(imageURL); }
catch (Exception e) { }
System.out.println(image == null);
icon = new ImageIcon(image);
System.out.println(icon == null);
logo = new JLabel(icon);
当我运行这个程序在Eclipse中,我得到下面的输出:
true
false
false
false
然而,当我出口的计划作为一个可运行的JAR,我得到这个输出如下:
true
false
true
java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(ImageIcon.java:204)
at me.pogostick29.audiorpg.window.Window.<init>(Window.java:85)
at me.pogostick29.audiorpg.window.WindowManager.setup(WindowManager.java:16)
at me.pogostick29.audiorpg.AudioRPG.main(AudioRPG.java:30)
在此先感谢您的帮助!