我正在尝试启动一个包含程序中使用的图像的JAR文件。然而,它找不到它们,所以标签变成空白。我该如何解决这个问题?
我是否需要JAR文件夹的同一文件夹中的所有图像并进入我的代码并编辑目录或不起作用?
修改,这样获得的图片:
hex19.setIcon(new ImageIcon("src/hexHouse.png")); //How the images are used.
答案 0 :(得分:4)
您的问题是您实际上是在尝试将图像作为文件获取,并且pf jar中不存在文件。相反,你必须将图像作为资源。
即,
BufferedImage img = ImageIO.read(getClass().getResourceAsStream("imageStreamLocation.png"));
ImageIcon icon = new ImageIcon(img);
hex19.setIcon(icon);
密钥将使用正确的图像流位置。这应该是“文件”的相对路径,但是相对于jar类文件的位置。