【发布时间】:2013-08-09 08:07:28
【问题描述】:
欢迎,我的代码有问题。应该保存资源路径的 URL 未初始化,谁能帮我解决这个问题?这是我的加载类的代码:
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.net.URL;
import javax.imageio.ImageIO;
public class bufferedImageLoader
{
public BufferedImage loadImage(String pathRelativeToThis) throws IOException
{
URL url = this.getClass().getResource(pathRelativeToThis);
BufferedImage img = ImageIO.read(url);
return img;
}
}
我遇到的错误如下:
Exception in thread "AWT-EventQueue-1" java.lang.IllegalArgumentException: input == null!
at javax.imageio.ImageIO.read(Unknown Source)
at rpg.bufferedImageLoader.loadImage(bufferedImageLoader.java:12)
at rpg.character.draw(character.java:40)
at rpg.main.paint(main.java:210)
at rpg.main.update(main.java:190)
at sun.awt.RepaintArea.updateComponent(Unknown Source)
at sun.awt.RepaintArea.paint(Unknown Source)
at sun.awt.windows.WComponentPeer.handleEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
【问题讨论】:
-
pathRelativeToThis==null 这里
-
你确定你的路径正确吗?
-
这种情况下的一个常见错误是忘记了路径开头的
/(即使路径是相对的!)。如果您的资源与您的类位于同一目录中,则路径应为/myResource.png。 -
关门了,我不知道我怎么会这么牛逼,并尝试了 2 天来用其他方法解决这些问题...谢谢。
标签: java url null initialization