【发布时间】:2013-07-26 09:42:43
【问题描述】:
我的纹理只在 Eclipse 中工作,但是当我尝试将其导出为可运行的 jar 时,我启动它并且没有纹理。我创建了一个资源文件夹并通过将其设置为类文件夹将其连接到项目,但它仅适用于 Eclipse。这就是我通常访问纹理的方式。
Image something;
public Image getsomethingImg(){
ImageIcon s=new ImageIcon("res/something.png");
something=s.getImage();
return something;
}
然后我画它。
g2d.drawImage(getsomethingImg(), 0, 0, null);
【问题讨论】:
-
您应该在构建/部署后检查纹理的位置。可能值得回顾这些路径,因为它们在 Eclipse 项目中可能不同。 “res/...”可以在 Eclipse 中工作,因为基本路径将是项目根目录,但在外部运行项目可能需要完整路径,如“C:\....”
-
1)
g2d.drawImage(getsomethingImg(), 0, 0, null);应该(很可能)是g2d.drawImage(getsomethingImg(), 0, 0, this);。 2)不要尝试在绘画方法中加载图像! 3) 为了尽快获得更好的帮助,请发帖SSCCE。 -
请看一下这个答案,adding resources to project。希望它会帮助你:-)
标签: java image swing embedded-resource textures