javax.imageio.ImageIO.read(Unknown Source) .class.getClassLoader().getResource

ly18765861391 2016-09-22 03:36:48
最近从网上下了段代码,在自己eclipse上建工程导入包,但就是不行,我已经把图片放到了相关文件夹下面,工程下的各个文件夹都放了,韩式不行,提示图片资源没有读入,异常内容如下:
Exception in thread "main" java.lang.IllegalArgumentException: input == null!
at javax.imageio.ImageIO.read(Unknown Source)
at guide.GuideUtil.getImage(GuideUtil.java:40)
at guide.GuideSystem.<init>(GuideSystem.java:41)
at guide.GuideSystem.main(GuideSystem.java:100)

检查后知道估计是.class.getClassLoader().getResource() 的问题,还是解决不了,放上相关代码,希望大神指点,谢谢!

public Image icon = GuideUtil.getImage("images/icon.png");//就是这里的路径问题,绝对路径我也试了,请教如何写路径
//或者说该把图片复制到哪里?
public static Image getImage(String path) {
URL u = GuideUtil.class.getClassLoader().getResource(path);
BufferedImage img = null;

try {
img = ImageIO.read(u); //读取图片信息
} catch (IOException e) {
e.printStackTrace();
}

return img;
}

请教应该把图片复制到哪里?或者如何修改图片的路径
...全文
1608 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
bcsflilong 2019-02-25
  • 打赏
  • 举报
回复
URL u = GuideUtil.class.getClassLoader().getResource(path);

把u
打印出来看看他指向哪里了
ly18765861391 2016-09-22
  • 打赏
  • 举报
回复
你好,你说的:类路径下,如果是maven工程,要放到srv/main/resource 下 我不太明白什么意思,能具体写一下吗? 我的工程名字是guide,我在/src 和/bin下面都放了images/icon.png图片
ly18765861391 2016-09-22
  • 打赏
  • 举报
回复
你好,按照你说的把把"images/icon.png" 写成"images//icon.png" 还是不行,和原来一样的问题
ly18765861391 2016-09-22
  • 打赏
  • 举报
回复
还是不行,没有通过
肃穆丶 2016-09-22
  • 打赏
  • 举报
回复
把"images/icon.png" 写成"images//icon.png" 试试???
shihao1001 2016-09-22
  • 打赏
  • 举报
回复
类路径下,如果是maven工程,要放到srv/main/resource 下

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧