ClassLoader getResourceAsStream没有在同一个dir中加载一些文件

时间:2013-09-24 12:18:17

标签: java scala classpath classloader getresource

我的问题是我能够在同一目录中加载一些文件而不能加载其他文件。

以下内容将始终在几个文件上返回null:

ClassLoader.getSystemClassLoader().getResourceAsStream(pathStr)

'jar tf'后jar中找到的路径子集:

app-jade/user/userSettings.jade
app-jade/user/userPassword.jade
app-jade/user/userEmail.jade
app-jade/user/userInfoSettings.jade

我可以加载此子集中的所有.jade文件,但userSettings.jade除外。我在尝试获取资源之前打印路径字符串,它们与jar中的whats完全匹配,如上所示(路径前面没有'/')。

我不明白我应该如何使用ClassLoader?

注意,我实际上使用scala 2.10.0和java.lang 1.7作为类加载器。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

检查userSettings.jade文件名中是否包含任何非打印字符,例如退格。有时,文件名可能会被意外打字弄乱。