getResourceAsStream()由抽象类调用返回null

时间:2015-03-18 03:28:38

标签: java jar abstract-class getresource

※我查看了旧问题,没有解决我的问题。

我遇到getResourceAsStream返回null的问题。它在Eclipse中工作,但在我将项目用作jar文件时却不行。

jar文件的文件夹名称为config,文件夹配置中有config file。我尝试使用下面的代码导入配置文件。

file = "/" + new File(configFolder, configFileName).getPath();
in = this.getClass().getResourceAsStream(file);

罐子以前工作过。但是现在我改变了我的代码并将上面的代码放在一个抽象类中。它不起作用。 getResourceAsStream返回null。

我试过了MyAbstractClass.class.getResourceAsStream(file),但它仍然没有工作。

2 个答案:

答案 0 :(得分:0)

标准的单独java应用程序,反斜杠无法加载属性文件(配置文件)。但它可以在反斜杠的Web应用程序中使用。

答案 1 :(得分:0)

您正在遇到类加载器问题。使用this.getClass().getClassLoader().getResourceAsStream(file);

如果它仍然不起作用,那么您的类路径或资源路径可能有问题。