我已经寻找了一段时间来解决这个问题。我的工作区中有一个项目文件夹(该文件夹基本上是我的根目录),其中有一个名为icon的文件。gif。在我的项目中,我有以下几点:
package com.mgflow58.Main;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
public class Game {
public static void main(String[] args) {
JFrame window = new JFrame("Guppy's Adventure");
window.add(new GamePanel());
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.setResizable(false);
window.pack();
window.setLocationRelativeTo(null);
window.setVisible(true);
window.setIconImage(new ImageIcon("icon.gif").getImage());
}
}
当我运行图标时,它在eclipse中运行良好,但导出的jar文件并不像在eclipse中那样显示图标。知道为什么吗?我想弄明白这件事快疯了。
jar文件包含其适当文件夹中所需的所有图像文件。
问题是ImageIcon(String)
正在磁盘上查找JavaDocs描述的命名文件。。。
公共图像图标(字符串文件名)
从指定文件创建图像图标。图像将通过使用MediaTracker预加载,以监控图像的加载状态。指定的字符串可以是文件名或文件路径。指定路径时,请使用Internet标准正斜杠(“/”)作为分隔符。(字符串被转换为URL,因此正斜杠适用于所有系统。)例如,指定:
新的ImageIcon("图像/myImage.gif")
参数:
filename-指定文件名或路径的字符串
这些资源不再驻留在磁盘上,但不会嵌入Jar文件中,因此无法再使用基于文件的方法访问它们。
相反,您需要使用类似于
类#getResource
的东西,例如。。。
window.setIconImage(new ImageIcon(Game.class.getResource("icon.gif")).getImage());
说到这里,我还建议使用
ImageIO
而不是ImageIcon
,原因有很多,但主要是因为如果由于某种原因无法加载资源,它实际上会引发异常,而不是无声地失败。。。
查看阅读/加载图像以了解更多详细信息
我在1-2年前用libGDX做了一个游戏,我可以在eclipse上运行它,它很有效。当我想导出jar文件时,我转到Export-Runnable jar file-这里我选择package required libraries并导出它。
我在将java文件导出到可运行的jar文件时遇到了问题。在eclipse中,它工作得很好,但是当我导出它时,它就不工作了。 我已经尝试过(java-jar myjar.jar)获取日志,但它说“无法访问jar文件” 因为当我将它放在注释中时,当我导出时,它运行,但没有映像。 我也尝试过这样的方法:,但它也不起作用。我做错了什么?如何导出JLabel上带有图像的可运行jar文件? (这是我的JLab
我正试图将eclipse中的java项目导出为可运行的jar,但由于某种原因,可运行的jar无法工作。如果双击可执行jar,它什么也不做。我尝试将所需库提取并打包到生成的JAR中。 所以我也尝试导出一些更简单的项目,那些工作很好。最大的区别是我的真实项目有文件:图像和xml文件。 在代码中引用它们,如下所示:
这是一个试用应用程序,没有什么大的,它有119行代码。我只是在摆弄java fx,试图创建一个可运行的GUI java应用程序。因此,在eclipse中,右键单击我的项目 null 在我尝试了所有这些之后,我仍然得到了错误。有人知道为什么吗?你能帮忙吗?
问题内容: 我在将当前项目提取到可执行jar文件时遇到问题。当我在日食中按下运行按钮时,一切正常,但是当我这样做时 然后启动.jar文件;我唯一得到的是带有灰色画布的窗口。它应该启动我编写的游戏(spaceInvaders)。 这是我上载项目的github的链接。我真的不知道错误在哪里,在哪里看。在我的代码中?在我安装的JRE / JDK中?创建罐子时我做错什么了吗? 请帮忙 -。- 问题答案:
我正在尝试将我的程序导出为一个可运行的JAR。该程序在eclipse中工作得非常好,但它不能作为一个可运行的JAR运行。我正在使用另外3个jar文件作为引用jar,这样我就可以使用音频,我认为这可能是问题所在。可运行的jar启动,但它只是一个全白的窗口,程序没有启动。 我点击我的项目,然后右键点击并选择“导出”,然后我选择“可运行的JAR”选项。我尝试使用所有三个处理引用库的选项来创建jar。 将