当前位置: 首页 > 面试题库 >

我的jar文件无法加载图像

尉迟远
2023-03-14
问题内容

我目前正在编写一个程序,需要以jar形式发送给朋友。该程序具有需要加载的图像,以便程序正常运行,我希望所有图像都包含在一个jar中。目前,它无法从可执行jar或通过命令行运行时运行。它可以在netbeans中工作。

这是我正在使用的代码:

要加载我正在使用的图像:

protected ImageIcon createImageIcon(String path, String description)
{
 java.net.URL imgURL = getClass().getClassLoader().getResource(path);
 if (imgURL != null)
 {
     return new ImageIcon(Toolkit.getDefaultToolkit()
                  .getImage(imgURL),description);
 }
 else
 {
     System.err.println("Couldn't find file: " + path);
     return null;
 }
}

对于我也尝试过的网址

 getClass().getResource(path)

应该在其中创建图像的行是:

this.img =createImageIcon(File.separator+"."+File.separator
           +"resources"+File.separator+"tiles"+File.separator+"tile.png","tile");

我的jar文件设置为在其顶层包含类文件的文件夹和资源文件夹。

我一直在寻找解决此问题的方法,但是找不到任何有效的方法。

谢谢。


问题答案:

您的URL会评估出"/./resources/tiles/tile.png"哪个没有意义(但从ClassLoaderNetBeans运行时可能会使用该URL可以容忍该错误。)
尝试删除initial "/./"。另外,您也不需要引用,File.separator因为该字符串被视为相对URL,并且正斜杠始终有效。



 类似资料:
  • 我的应用程序部署在一个JBoss6服务器中,该服务器包含最新的BC实现bcprov-jdk15on-151.jar放在服务器安装的lib文件夹中。尝试运行以下代码段时: JBoss似乎没有成功地在tmp目录中打开JAR进行验证。我做了多个测试,例如:-在一个单独的主类中手动验证JAR-在tmp目录中创建一个文件并在JBoss应用程序代码中打开它-更改默认的tmp目录(java.io.tmpdir)

  • 我正在尝试从可执行JAR文件加载图像。 我跟踪了这里的信息,然后是这里的信息。 这是检索图像的函数: 这就是它的名称: 这是一个简单的对象。我也不会得到NullPointerException,除非它被UI屏蔽。 我检查了JAR文件,图像位于: /图片/标识1。巴布亚新几内亚 当前代码在eclipse中以及导出到JAR并在终端中运行时都有效,但在双击JAR时不起作用,在这种情况下,图标是默认的JF

  • 问题内容: 这是我尝试将Maven项目部署到tomcat时遇到的错误 错误: 但是WEB-INF \ lib中有javax.servlet-api-3.0.1.jar 问题答案: 信息:validateJarFile(D:\ Softwares \ tomcat \ apache-tomcat-7.0.50 \ webapps \ myWebApp_1 1 \ WEB-INF \ lib \ ja

  • 我完成了我的程序,现在我正在尝试创建一个jar文件来运行它,但是当我尝试这样做时,什么都没有发生,没有错误,没有执行,没有任何事情。这是路径:D:\Eclipse\Workspace\Game\Src\AppPackage我编译了我的类D:\Eclipse\Workspace\Game\Src\AppPackage javac Game.java创建了我的清单和jar文件:echo main-cl

  • 问题内容: 我已经尝试搜索,但仍然没有解决方案。当我导出到jar文件时,我的所有图像突然不再起作用。它们在Eclipse中运行良好,并且我已确保它们在jar文件中。我尝试使用get资源方法并制作一个图像加载器类来自动向上目录树,但它仍然失败。这是我所做的: 我将发送的路径如下所示:“ doc / icon.png” 我将所有图像放置在doc文件夹中,结构是最终项目,在内部有doc文件夹,然后是sr

  • 当我构建一个jar文件并运行它时,由于找不到图像图标,它显示一个空指针异常 这是我运行jar文件时得到的错误 但是当我在NetBeans中运行这个项目时,它运行良好 这是我列出罐子里所有文件时的输出