【问题标题】:Image not found when running as Jar作为 Jar 运行时找不到图像
【发布时间】:2012-01-30 05:30:14
【问题描述】:

我想问一下我项目中的一个问题: 我有一个扩展 JFrame 的类,我想使用以下代码将该框架上的 Java 图标更改为另一个图标:

setIconImage(new ImageIcon(getClass().getResource("icon.PNG")).getImage());

我正在使用NetBeans,当我从 NetBeans 运行我的项目时,它运行正常,但是当我从 jar 运行它时,它不运行。 然后,当我删除该代码时,我的 jar 正常运行,框架中带有 Java 图标。

谁能告诉我这段代码有什么问题?

【问题讨论】:

  • 这是一个非常糟糕的问题标题。
  • 首先想到的是 icon.PNG 可能没有被打包到 jar 中,或者可能发生了其他类型的路径问题。您是否收到任何错误消息?
  • 我很抱歉之前的问题标题,我是新手,我的英语很糟糕.. 不,当我启动那个 jar 时,我没有收到任何错误,,,
  • 为什么"icon.PNG" 有一个大写的扩展名?请注意,Java 区分大小写,因此如果名称是 Icon.png,那么正是需要这样写。
  • @SLaks 我读到的第一件事就是“它有腿吗?”

标签: java image jar icons application-resource


【解决方案1】:

运行 jar 文件时,您无法使用以下方式访问文件:

getClass().getResource("...")

你应该使用:

getClass().getResourceAsStream("...")

见:File loading by getClass().getResource()

【讨论】:

    猜你喜欢
    • 2014-11-10
    • 1970-01-01
    • 1970-01-01
    • 2013-07-06
    • 2017-01-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多