所以我在制作的这个基本国际象棋游戏中使用了一个棋子的图像。
当我在Eclipse中运行该程序时,它运行得非常好,正如预期的那样。但是,当我使用Eclipse导出并运行该程序时,它会给出错误java.imageio.IIOException: Can't read input file!
图像存储在包名称图像中的源文件夹中。
我使用加载图像
BufferedImage image = null;
try {
image = ImageIO.read(new File("src/images/Chess_Pieces.png"));
} catch (IOException e) {
System.out.println(e);
}
我尝试过将图像定位到许多不同的地方,也尝试过不同的加载图像的方法,但都不起作用,而且我已经确保图像确实正确地显示在导出的JAR文件中。
更改它:
image = ImageIO.read(getClass().getResource("/images/Chess_Pieces.png"));
参见:
将文件加载为InputStream 的不同方法
正在加载图像资源