我见过很多其他人问过这个问题here和here,但似乎我已经做了所有必要的事情但是在使用getResourceAsStream()调用时我仍然得到null。
在netbeans中,我将图像拖到我的包中,它显示在保存源代码和.class文件的文件夹中。所以我有: SRC \ COM \ myProject的\ ClassIMakeTheCallFrom.java SRC \ COM \ myProject的\ MyImage.png
也存在类似的结构: 建立\类\ COM \ myProject的\ ClassIMakeTheCallFrom.class 建立\类\ COM \ myProject的\ MyImage.png
然而,当我打电话时:
System.out.println(dolphinWater.class.getClassLoader().getResourceAsStream("myImage.png"));
它出来了。我错过了什么吗?
答案 0 :(得分:3)
将文件直接放在src文件夹中,而不是包文件夹中。或者使用getResourceAsStream("com/myProject/myImage.png")
。
http://docs.oracle.com/javase/7/docs/api/java/lang/ClassLoader.html#getResource(java.lang.String)