一尘不染

图片不会从jar文件加载

java

我已经尝试搜索,但仍然没有解决方案。当我导出到jar文件时,我的所有图像突然不再起作用。它们在Eclipse中运行良好,并且我已确保它们在jar文件中。我尝试使用get资源方法并制作一个图像加载器类来自动向上目录树,但它仍然失败。这是我所做的:

public static Image load(String path)
{   String temp = path;
    Image image = null;
    try {

     image = new ImageIcon(path).getImage();


    }

    catch ( Exception e )
    {   
        try {
         while (image == null )
         {
              image = new ImageIcon("../"+ path).getImage();
         }
         if ( path.equals("../../../../../../"+ temp))
         {
             while ( image ==null)
             {
                 image = new ImageIcon("./"+ path).getImage();
             }
         }
        }
        catch ( Exception ae)
        {


        System.err.println("cannot locate image");
    }}


    return image;
}

我将发送的路径如下所示:“ doc / icon.png”

我将所有图像放置在doc文件夹中,结构是最终项目,在内部有doc文件夹,然后是src文件夹,其中包含所有软件包。


阅读 267

收藏
2020-12-03

共1个答案

一尘不染

尝试使用此:

Image.class.getClassLoader().getResource("/filepath/filename").getFile()
2020-12-03