打包成 jar 后 运行 不显示图片,但是在IDEA中运行是正常的
JPanel 中使用 g.drawImage()方法 在JFram 中不能显示
软件是IDEA
//这是涉及到的部分代码
g.drawImage(MyImageIO.GRASS.getImage(), 0,540,null);
g.drawImage(MyImageIO.GRASS.getImage(), 740,540,null);
g.drawImage(MyImageIO.GRASS.getImage(), 430,270,null);
g.drawImage(MyImageIO.GRASS.getImage(), 370,270,null);
g.drawImage(MyImageIO.GRASS.getImage(), 310,270,null);
//获取图片的类,为了避免找不到问题因素我都粘过来了,导入的包省略了
public enum MyImageIO {
P1_U("src\\tankgame\\images\\tank\\pl1_u.gif"),P2_U("src\\tankgame\\images\\tank\\pl2_u.gif"),PC_U("src\\tankgame\\images\\tank\\pc_u.gif"),
P1_D("src\\tankgame\\images\\tank\\pl1_d.gif"),P2_D("src\\tankgame\\images\\tank\\pl2_d.gif"),PC_D("src\\tankgame\\images\\tank\\pc_d.gif"),
P1_L("src\\tankgame\\images\\tank\\pl1_l.gif"),P2_L("src\\tankgame\\images\\tank\\pl2_l.gif"),PC_L("src\\tankgame\\images\\tank\\pc_l.gif"),
P1_R("src\\tankgame\\images\\tank\\pl1_r.gif"),P2_R("src\\tankgame\\images\\tank\\pl2_r.gif"),PC_R("src\\tankgame\\images\\tank\\pc_r.gif"),
BULLET("src\\tankgame\\images\\bullet.gif"),BOOM("src\\tankgame\\images\\boom.png"),OVER("src\\tankgame\\images/GameOver.gif"),
BRICK("src\\tankgame\\images\\wall\\brick2.gif"),IRON("src\\tankgame\\images\\wall\\irons.gif"),GRASS("src\\tankgame\\images\\wall\\grass.gif"),
BASE("src\\tankgame\\images/wall/base.gif"),BREAK_BASE("src\\tankgame\\images\\wall\\break_base.gif");
private final Image image;
MyImageIO(String fileName) {
this.image = new ImageIcon(fileName).getImage();
}
public Image getImage() {
return image;
}
}
在cmd 中运行jar包 加载不出图片资源,但是通过IDEA是可以加载的,有没有老哥知道怎么解决