Java .Jar 图像未显示

发布于 2024-12-05 07:06:18 字数 283 浏览 2 评论 0原文

我用 Java 创建了一个应用程序(使用 Eclipse IDE),并在代码中引用了存储在名为“source”的源文件夹中的图像,并且它在 IDE 中运行良好。当我将罐子提取到可运行的罐子时,没有错误,但图片没有显示,或者即使显示,也只是显示其后面的内容。我在 WinRar 中打开 .jar,看起来图片都与类文件一起扔了。我该如何解决这个问题?

Image i = Toolkit.getDefaultToolkit().getImage("sources/SystemTrayOne.png");

I made an application in Java (using the Eclipse IDE) and i refer in the code to images stored in a source folder called "source" and it worked fine in the IDE. When I extracted the jar to an runnable jar, there are no errors but the picture doesn't show up, or if it does it just shows whatever's behind it. I opened up the .jar in WinRar and it appears the pictures are all thrown in with the class files. How can I fix this?

Image i = Toolkit.getDefaultToolkit().getImage("sources/SystemTrayOne.png");

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

扶醉桌前 2024-12-12 07:06:18

您正在尝试获取 Jar 中不存在的文件。而是通过 Class#getResource(...) 获取 URL,

例如,

URL imgUrl = getClass().getResource(....); // resource name here
Image i = Toolkit.getDefaultToolkit().getImage(imgUrl);

或者更好

URL imgUrl = getClass().getResource(....); // resource name here
Image i = ImageIO.read(imgUrl);

You're trying to get a file which doesn't exist in a Jar. Instead get the URL via the Class#getResource(...)

e.g.,

URL imgUrl = getClass().getResource(....); // resource name here
Image i = Toolkit.getDefaultToolkit().getImage(imgUrl);

or better

URL imgUrl = getClass().getResource(....); // resource name here
Image i = ImageIO.read(imgUrl);
凉月流沐 2024-12-12 07:06:18

直到昨天,我也面临着同样的问题。我为此有修复。让我与您分享。

  • 在您的日食中,转到您的项目名称。
  • 正确,您的项目名称。
  • 新 - >源文件/文件夹
  • 名称此源文件/文件夹现在是您本地计算机上的图像
  • ,请转到eclipse工作区
    物理存在。
  • 将所有图像复制到新创建的“图像”文件夹中,仅在此处。
  • 现在回到日食。
  • 右键单击您的项目 - > 现在刷新
  • ,无论您在.java文件中使用映像的任何地方,都转到这些行,然后将图像位置前缀为图像/

示例:xxx xxx = xxxx(example.jpg)用.... xxx xxx = xxxx(图像)更改它。 /example.jpg)

繁荣!运行.jar文件时将显示图像。

注意:不要使用Java -jar AppName.jar从CMD运行.jar文件,只需双击.jar文件即可看到图像。

如果对您有用,请务必投票。 :)

I was also facing the same issue till yesterday. I have got a fix for this. Let me share it with you.

  • In your Eclipse, go to your Project name.
  • Right your project name.
  • New -> Source file/folder
  • Name this Source file/folder as images
  • Now on your local machine go to the Eclipse workspace where your project
    is physically present.
  • Copy ALL your images into the newly created 'images' folder right there only.
  • Now go back to Eclipse.
  • Right click on your Project -> Refresh
  • Now, wherever you are using images in your .java files , go to those lines and prefix the image location with images/

Example : XXX xxx = XXXX (example.jpg) Change it with .... XXX xxx = XXXX (images/example.jpg)

BOOM !! The images will be shown when you run the .jar file.

NOTE : Do not run the .jar file from cmd using java -jar AppName.jar Instead, just double click the .jar file and you will be seeing the images.

If it works for you, kindly upvote. :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文