Java 当绑定到访问YAML文件时,将抛出NullPointPointPointer

Java 当绑定到访问YAML文件时,将抛出NullPointPointPointer,java,intellij-idea,inputstream,embedded-resource,Java,Intellij Idea,Inputstream,Embedded Resource,使用此代码,我试图访问intellij项目中我的资源文件夹中的yaml文件,以接收以下属性: InputStream inputStream = this.getClass() .getClassLoader() .getResourceAsStream("configuration.yaml"); 但由于某些原因,它似乎找不到它,而且requirennull(inputStream)似乎抛出了一个空指针。这些项目为一位同事工作

使用此代码,我试图访问intellij项目中我的资源文件夹中的yaml文件,以接收以下属性:

 InputStream inputStream = this.getClass()
                .getClassLoader()
                .getResourceAsStream("configuration.yaml");
但由于某些原因,它似乎找不到它,而且
requirennull(inputStream)似乎抛出了一个空指针。这些项目为一位同事工作,但我无法让它在我的机器上工作。奇怪的是,同一个项目只是在我的机器上没有一些小的改动,我不知道是什么改变了我的机器


非常感谢您的帮助。

检查文件是否确实位于您的资源文件夹中。 您可以尝试此类加载器:

ClassLoader.getSystemClassLoader().getResourceAsStream("configuration.yaml");

我在参考资料中有它,我在这个类加载器中得到了相同的错误。您是如何编译的?像maven这样的构建系统可以以不同的方式处理资源位置。查看您可以使用此工具生成的实际编译JAR文件,查看这些资源是否存在于一个生成中,而不存在于另一个生成中验证资源文件夹是否是类路径或生成路径的一部分,并检查名称,例如字母大小写和隐藏字符。在模块化环境中,
.getClass().getResourceAsStream(“/configuration.yaml”)
更适合提供更多的上下文,尽管您应该使用
实际的.class
而不是
getClass()
,因此不能在子类的不同上下文中结束。没有进一步的信息,很难给出更多的建议。我使用gradle,但我对它非常陌生。如何查看JAR文件?如何验证resources文件夹是否是类路径的一部分?