我是Java的新程序员。我有一个我想要导出的小目录应用程序,但由于某种原因,每当我尝试将其导出到可运行的jar文件时,结果都不包含我在程序中指定的任何图像。基本上,我在eclipse中运行它,并且它工作正常,但是当我将它作为可运行的JAR运行时,它没有图像。我有5个.java文件,它们都是彼此捆绑在一起的。我的图像可以在Images / Image.png找到[我已经将图像文件夹设为源文件夹。]
我尝试了 eveything ,但由于某些原因我无法让它工作,如果您对该主题有任何了解,请告诉我。我不知道是不是因为我是菜鸟或者我做错了什么。
static ImageIcon logoicon = new ImageIcon("Images/Logo.png");
答案 0 :(得分:0)
您是否尝试过getResourceAsStream()
方法?结帐this页面了解更多信息
答案 1 :(得分:0)
以下是我使用的方法:
public static ImageIcon createImageIcon(final String path) {
InputStream is = ImageLoader.class.getResourceAsStream(path);
int length;
try {
length = is.available();
byte[] data = new byte[length];
is.read(data);
is.close();
ImageIcon ii = new ImageIcon(data);
return ii;
} catch (IOException e) {
LogManager.logCriticalProblem("Image not found at {} - {}", new Object[]{path, e.getMessage()});
}
return null;
}
如果您遇到此方法的问题,请尝试更改您正在使用的路径:
"Images/Logo.png"
"/Images/Logo.png"
"src/Images/Logo.png"
"/src/Images/Logo.png"
或其他组合,具体取决于您的包装结构。例如,如果您的图片实际位于net.blah.fizz.Images
,则您的路径为"/net/blah/fizz/Images/image.png"