java - 从 .jar 文件运行时无法在 Java Swing 中加载图像

标签 java image swing jar classpath

我可以毫无问题地从 Eclipse 运行我的 Java Swing 应用程序。但是当我从 .jar 文件运行它时,图像无法加载。

我加载图像:

setIconImage(Toolkit.getDefaultToolkit().
getImage(getClass().getResource("../images/logo.png")));

如何加载图像,以便即使我从 .jar 文件运行时它们也能正常工作?

图像位于同一个 Jar 文件中的数据包 com.example.images 中,使用它们的类位于 com.example.gui.dialogs 中>

最佳答案

使用 jar 内的绝对路径。如果您不知道,请尝试使用 zip 程序打开 JAR,例如7zip。然后使用绝对路径:

getClass().getResource("/com/examples/images/logo.png")

这显然只有当你的图像在你的 jar 中时才有效。如果不是,但在你的类路径中,这也应该没问题。

关于java - 从 .jar 文件运行时无法在 Java Swing 中加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2927334/

相关文章:

java - 在 Swing 中创建等距菜单

java - 由于扫描仪或 while 循环,JFrame 未显示?

java - 如何将带有链接注释的覆盖文本添加到现有 pdf?

java - 是否可以在eclipse中有一个java程序来编译java以外的其他语言?

html - 在将实际图像加载到框架之前,如何根据 CSS 使浏览器缩放图像框架?

javascript - JavaScript 什么时候执行?

裁剪图像数组

java - 如何过滤JTextField中的某些字符

java - 如何在程序运行时用另一个 JPanel 替换

Java 原子特性与有效 Java 摘录