我有一个java applet,我在其中更改了窗口左上角显示的图像图标。我使用的代码是:
Toolkit kit = Toolkit.getDefaultToolkit();
Image frameIcon = kit.getImage("src/myapp/resources/logo.png");
getFrame().setIconImage(frameIcon);
在将applet部署到独立jar之前,一切正常。在这种情况下,显示的图标是默认图标,就好像代码无法找到图像一样。但是图像在里面,虽然它在文件夹中:myapp / resources /
我在这里做错了什么? 这是一些奇怪的java bug吗?
答案 0 :(得分:1)
您确定在jar文件中导出源代码吗?因为您的图像位于“src / myapp / resources / logo.png”中,所以必须在jar文件中包含“src / myapp / resources”文件夹。
但是我建议你将你的图像放在应用程序文件夹根目录下的另一个文件夹(如“资源”)中(即在jar文件的根目录下),然后你就可以导出一个applet了。没有源代码。
答案 1 :(得分:0)
我设法为此找到了解决方法。我改变了:
Image frameIcon = kit.getImage("src/myapp/resources/logo.png");
到
Image frameIcon = kit.getImage("logo.png");
然后部署jar。之后,我将图像复制到.class文件在jar中的相同位置,然后加载确定。 我不喜欢这种解决方法,但现在必须这样做。 src / resources文件夹存在并且内部有图像但不加载。我认为这是一个路径规范问题,但我还没有找到解决方案......