当我使用以下代码时,我不断收到此错误:
try
{
image=ImageIO.read(getClass().getResourceAsStream("build/classes/javaproject/Space.gif"));
}
catch (IOException ex)
{
lastException=ex;
}
它一直给我"输入== null" 错误。
我已经尝试找到一个解决方案(几个已经解决的问题已经解决了,但那些对我来说没有用)但我没有运气。例如This one与我的问题非常相似,但我似乎无法确切地知道将图像文件放在哪里。
我注意到他们中的大多数都是通过简单的文件放置来解决的,所以当有些人有' bin'虽然我已经建立了#39;和' src'在NetBeans上。
另外,我意识到这条路可能是错误的,但我已经尝试了许多不同的方式,它似乎并没有与它们中的任何一个一起工作。我真的很感激任何帮助...
答案 0 :(得分:1)
我假设从名称中build/classes/
是类路径中的文件夹;所以你可能需要写的是:
image=ImageIO.read(getClass().getResourceAsStream("/javaproject/Space.gif"));
编辑评论如下:由于javaproject/
实际上不在build/classes/
内,我猜您确实需要:
image=ImageIO.read(getClass().getResourceAsStream("/Space.gif"));
(我知道这里的上下文有点不同,但应该清楚这个系统是在文件系统上建模的。如果你的build/classes/
目录不包含javaproject/
目录,那么你为什么要写build/classes/javaproject/
?)
答案 1 :(得分:0)
promblom就是它的A系统文件所以你也这样做了:
ClassLoader.getSystemResourceAsStream