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

Java 由返回null的抽象类调用的getResourceAsStream(),java,jar,abstract-class,getresource,Java,Jar,Abstract Class,Getresource,※我已经看了老问题,没有一个解决了我的问题 我遇到了getResourceAsStream返回null的问题。它在Eclipse中工作,但在我将项目用作jar文件时不起作用 jar文件有一个文件夹名config,在文件夹配置中有一个config文件。我尝试使用下面的代码导入配置文件 file = "/" + new File(configFolder, configFileName).getPath(); in = this.getClass().getResourceAsStream(file

※我已经看了老问题,没有一个解决了我的问题

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

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

file = "/" + new File(configFolder, configFileName).getPath();
in = this.getClass().getResourceAsStream(file);
这个罐子以前用过。但是现在我更改了代码,并将上面的代码放在一个抽象类中。它不起作用了。getResourceAsStream正在返回null


我尝试了MyAbstractClass.class.getResourceAsStream(文件),但仍然不起作用。

标准的孤立java应用程序,无法使用反斜杠加载属性文件(配置文件)。但是它可以在带有反斜杠的web应用程序中工作。

您遇到了类加载器问题。使用
this.getClass().getClassLoader().getResourceAsStream(文件)


如果仍然不起作用,则可能是类路径或资源路径有问题。

是否有多个JAR?打印出
文件
。确保它确实指向JAR中的一个现有文件,我只有一个JAR。打印文件时会显示“/config\configfilename.txt”。我需要使用“/”吗?去掉反斜杠,是的。不要使用文件来构造路径。只需连接字符串。谢谢。我改为字符串连接,现在可以工作了。你能把这个加到你的答案里吗?这样我就可以接受了