InputStream仅为jar文件提供IllegalArgumentException

时间:2017-12-07 00:26:19

标签: java eclipse

在写这个问题之前,我在互联网上搜索并尝试了大部分方法,但我仍然无法找到解决问题的方法。 我的程序在eclipse上运行良好,但是当我想创建一个可执行的jar文件并尝试从命令窗口运行它时,它会抛出IllegalArgumentException。我的包裹如下:

Package

我的代码:

public JLabel getLabel() {
    JLabel label = null;
    try {
        String address = "assets/" + pieceName + ".png";
        InputStream is = this.getClass().getClassLoader().getResourceAsStream(address);
        BufferedImage image = ImageIO.read(is);
        ImageIcon imageIcon = new ImageIcon(image);
        label = new JLabel(imageIcon);
    } catch (IOException e) {
        e.printStackTrace();
    } 
    return label;
}

所以基本上,我的'是'即使地址适用于日食的所有可能性,值也会变为null。我试过把' /'在资产之前,但在那个时候,程序甚至没有在日食中编译。我还用winrar检查了jar文件,这是截图:

Jar File

这是命令窗口的截图:
Command Window

感谢您的阅读,祝您度过愉快的一天。

0 个答案:

没有答案