Java 在eclipse中将项目构建为可执行jar文件时不呈现缓冲图像
所以,我正在为我的编程课做一个基于2D瓷砖的游戏。我已经完成了在游戏中渲染图像和移动的基础知识。当我在eclipse中运行项目时,我的所有图像都能正常工作。当我将其构建为一个可执行jar文件时,没有一个图像显示出来 这就是它的外观(当我在eclipse中使用当前设置运行它时) 这就是我运行可执行jar时发生的情况 我的图像加载在资产类中,如下所示:Java 在eclipse中将项目构建为可执行jar文件时不呈现缓冲图像,java,eclipse,bufferedimage,executable-jar,Java,Eclipse,Bufferedimage,Executable Jar,所以,我正在为我的编程课做一个基于2D瓷砖的游戏。我已经完成了在游戏中渲染图像和移动的基础知识。当我在eclipse中运行项目时,我的所有图像都能正常工作。当我将其构建为一个可执行jar文件时,没有一个图像显示出来 这就是它的外观(当我在eclipse中使用当前设置运行它时) 这就是我运行可执行jar时发生的情况 我的图像加载在资产类中,如下所示: SpriteSheet sheet = new SpriteSheet(ImageLoader.ImageLoader("/textures/sh
SpriteSheet sheet = new SpriteSheet(ImageLoader.ImageLoader("/textures/sheet.png"));
这是图像加载器:
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。
我知道它正在将图像构建到罐子中,因为如果我提取它,我可以看到它们
你知道我搞砸了什么吗?很确定你需要在构建路径中添加一个Res文件夹 Res文件夹是所有精灵工作表的存放位置 右键单击项目并编辑生成路径 尝试将纹理文件夹添加到构建路径中 编辑
文件夹不需要命名为“Res”打开jar,例如使用7Zip、WinZip或eclipse。路径
“/textures/sheet.png”
应该在那里。而且它区分大小写(与Windows相反)。构建为可执行jar只需向清单文件添加一个条目ImageLoader方法应命名为ImageLoader。应从imageLoader方法中删除System.exit调用。如果textures目录位于Java类路径中,则路径名为“/sheet.png”。看见