【问题标题】:ImageIO.read(getClass().getResource(imgStr)) returns null in JARImageIO.read(getClass().getResource(imgStr)) 在 JAR 中返回 null
【发布时间】:2019-05-13 17:44:37
【问题描述】:

在我的 JAR 文件中加载图像时遇到问题。 我正在使用:

BufferedImage img = ImageIO.read(getClass().getResource(imgStr));

imgStr 的格式为“/xxxx.png”。

我在同一个位置有两个不同的 .png 图像。 一张图片,假设 /x.png 加载正常。 另一张图片 /y.png 给出错误:

java.lang.IllegalArgumentException: input == null

我找不到任何原因。 奇怪的是,在 Eclipse 环境中一切正常。

这可能与图像透明有关吗?

有人有想法吗?

提前致谢。

【问题讨论】:

  • 您能说出 x 和 y 的实际名称吗?
  • /H4000_1.png 和 /Cancel 是名称。第一个抛出错误,第二个没有。
  • 好吧,我会确保字符“_”不会造成任何麻烦(可能不会)。您确定将正确的文件名放入 imgStr 吗?
  • 是的,我确定。一件事我忘了提。在eclipse环境中一切正常。只有在 JAR 中才会出现问题!
  • 我现在尝试删除名称中的“_”,但没有任何改变。

标签: java jar javax.imageio


【解决方案1】:

所以问题是一些文件是大写的.PNG。 显然有些程序保存为“.png”,而另一些程序保存为“.PNG”。

【讨论】:

    猜你喜欢
    • 2021-12-15
    • 2014-12-07
    • 1970-01-01
    • 2012-07-10
    • 2014-01-20
    • 2014-12-24
    • 2017-08-12
    相关资源
    最近更新 更多