好的伙计们,所以我正在尝试将我的游戏编译成一个jar文件,但是我无法将图像加载到工作中。从NetBeans运行时,一切都很好。但是在JAR中,URL始终为null。
以下是我正在使用的代码:
URL url = this.getClass().getResource("/textures/Lava.jpg");
BufferedImage sourceImage = null;
try
{
sourceImage = ImageIO.read(url);
}
catch(IOException e)
{
System.out.println(e.getMessage());
}
我试过解压缩JAR并检查内容,我的纹理文件夹就在那里,里面的图像也是。我有什么想法吗?
答案 0 :(得分:1)
您应该将URL
路径作为系统的相对路径。
答案 1 :(得分:1)
此前在这里回答:
Accessing a file inside a .jar file
更好地使用
new BufferedReader(new InputStreamReader(getClass().getResourceAsStream("/resources/" + filename)))