Java JAR中未显示图像

Java JAR中未显示图像,java,eclipse,jar,Java,Eclipse,Jar,我制作了一个应用程序,它使用一个图像作为图像的背景,当我在eclipse中运行它时,它工作得非常好,但是当我将它打包到一个.Jar文件中时,图像就没有显示出来。 我在Stackoverflow上搜索答案,我找到了类似的帖子,我尝试了解决方案,但没有任何效果 这就是我最后要做的 private void init(){ setPreferredSize( new Dimension( w, h ) ); setVisible(true); URL url = getClass().getReso

我制作了一个应用程序,它使用一个图像作为图像的背景,当我在eclipse中运行它时,它工作得非常好,但是当我将它打包到一个.Jar文件中时,图像就没有显示出来。 我在Stackoverflow上搜索答案,我找到了类似的帖子,我尝试了解决方案,但没有任何效果

这就是我最后要做的

private void init(){
setPreferredSize( new Dimension( w, h ) );
setVisible(true);

URL url = getClass().getResource("Graph2.png");
System.out.println("Value = " + url);
img = Toolkit.getDefaultToolkit().createImage(url);
}
构造函数调用此函数来初始化GUI 然后我在paintcomponent中调用这个函数来绘制图像

private void initializeGrid(Graphics g) {

    Graphics2D g2d = (Graphics2D) g;
    g2d.drawImage(img, 0, 0, this);

}
不确定是什么问题,我试着把图像放在任何地方,从src外的文件夹到bin内,再到bin中的GUI包内,没有任何效果


提前感谢

设置此功能的典型方法是在Eclipse中创建如下文件夹:

bin/
resources/
src/
resources
中创建包结构,就像在
src
bin
中一样。将图像文件复制到
resources
中的同一个包中,与将尝试在
src
中加载它的类相同


在项目>属性>Java构建路径>源代码中,将
src
resources
添加为源文件夹。现在,当您构建项目时,
resources
的内容将被复制到
bin
,它将从IDE和JAR中工作。

请尝试为JAR中的图像指定绝对位置,如

URL=getClass().getResource(“/com/test/mypackage/Graph2.png”)

如果你的形象靠近你的班级或

URL=getClass().getResource(“/Graph2.png”)

如果您的图像位于JAR文件的根目录中


另外请注意,如果文件名“Graph2.png”不是“Graph2.png”

System.out.println()是什么意思
method print out?Value=file:/C:/Users/ahmed/CollegeProjects/numeric/bin/Graphics/Graph2.png从.jar运行它的时间是什么时候?我将它的值添加到了一个JLabel中它是null我有这个结构bin Graphics math src Graphics math resources Graphics我在resources/Graphics中添加了pic,但仍然什么都没有happenedi由于某些原因无法添加新行