我正在开发一个需要显示图片的应用程序。如果我使用以下代码从eclipse运行我的应用程序
Image icon = ImageIO.read(new File("src/pci1.png"));
然后图像将加载但是当我的runnable jar被执行时它不会显示。
如果我使用此代码
`String imgName = "pic1.png";
InputStream in = getClass().getResourceAsStream(imgName);
ImageIcon img = new ImageIcon(ImageIO.read(in));
icon = img.getImage();`
然后当我在eclipse中运行时图像不会显示但在使用runnable jar时显示正常。我似乎无法找到一个解决方案,因为它在eclipse和我的runnable jar中运行。
非常感谢任何想法
由于
答案 0 :(得分:2)
你的问题是eclipse假设你的基目录是项目目录,所以很高兴跟随src/pic1.png
并找到该文件。 jar文件假定它正在运行的目录是基目录。
通常,您不会将名为src
的文件夹打包到您的jar中......只包含其中包含的包。将图形,配置等保存在打包到jar中的resources
文件夹中是一种很好的方式。