当项目在eclipse中构建为可执行jar文件时,缓存的图像无法呈现

时间:2016-05-13 13:47:54

标签: java eclipse bufferedimage executable-jar

所以,我正在为我的编程课程开发基于2D平铺的游戏。我已经完成了渲染图像和移动游戏的基础知识。当我在eclipse中运行项目时,我的所有图像都有效。当我将它构建为可执行jar文件时,没有任何图像显示出来。

它应该是这样的(当我在当前设置的eclipse中运行它时) What is should look like

当我运行可执行jar时会发生这种情况。What I get

我的图片加载在资产类中,如下所示:

SpriteSheet sheet = new SpriteSheet(ImageLoader.ImageLoader("/textures/sheet.png"));

这是Image Loader:

public class ImageLoader 
{
public ImageLoader()
{

}
public static BufferedImage ImageLoader(String path)
{
    try {
        return ImageIO.read(ImageLoader.class.getResource(path));
    } catch (IOException ex) {
        ex.printStackTrace();
        System.exit(1);
    }
    return null;
}
}

我在构建路径中指定的两个文件夹是src和res。 我知道它正在将图像构建到jar中,因为我可以看到它们,如果我提取它。

知道我搞砸了什么吗?

1 个答案:

答案 0 :(得分:1)

非常确定你需要在构建路径中添加Res文件夹。

Res文件夹是所有精灵表所在的位置。

右键单击您的项目并编辑构建路径。

尝试将textures文件夹添加到构建路径

修改 该文件夹不需要命名为" Res"