Java 是什么导致了与类加载器和文件相关的NullPointerException?

Java 是什么导致了与类加载器和文件相关的NullPointerException?,java,netbeans,nullpointerexception,Java,Netbeans,Nullpointerexception,我正在创建一个方法,该方法应该查找文本文件的路径,并将其作为字符串返回,以用于配置文件。以下是受影响的代码块: public String getConfigLocation() { String fileName = "locateconfig.txt"; ClassLoader classLoader = ClassLoader.getSystemClassLoader(); File file = new File(classLoader.g

我正在创建一个方法,该方法应该查找文本文件的路径,并将其作为字符串返回,以用于配置文件。以下是受影响的代码块:

public String getConfigLocation() {
        String fileName = "locateconfig.txt";
        ClassLoader classLoader = ClassLoader.getSystemClassLoader();
        File file = new File(classLoader.getResource(fileName).getFile());
        locationFile = file.getAbsolutePath();
        return locationFile;
    }
引发此异常的行是
File File=new File(classLoader.getResource(fileName.getFile())

这里是堆栈跟踪的前几行-只是前几行,因为这里受影响的所有方法都与我遇到问题的方法交互

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at epicorexpert.EpicoreJFrame.getConfigLocation(EpicoreJFrame.java:1068)
    at epicorexpert.EpicoreJFrame.checkConfig(EpicoreJFrame.java:1076)
    at epicorexpert.EpicoreJFrame.<init>(EpicoreJFrame.java:94)
线程“AWT-EventQueue-0”java.lang.NullPointerException中的异常 位于epicorexpert.EpicoreJFrame.getConfigLocation(EpicoreJFrame.java:1068) 位于epicorexpert.EpicoreJFrame.checkConfig(EpicoreJFrame.java:1076) 在epicorexpert.EpicoreJFrame(EpicoreJFrame.java:94)
我忽略了什么可能是显而易见的问题?谢谢


编辑:为什么这被标记为一个重复的问题,并建议在什么是NullPointerException上重定向线程?我了解它们是什么,以及它们通常是如何解决的。这不是我在这里要问的;这是关于类加载器和文件对象以及我从它们获取NPE的具体说明。

getResource
如果找不到文件,则返回
null
!这很可能是您的
NullPointerException
的原因

classLoader
null不是吗?噢,word,可能就是这样。告诉你这可能是一个明显的问题。是的,这可能是你的情况。将声明更改为
ClassLoader ClassLoader=this.getClass().getClassLoader(),但它仍然不能正常工作。我很确定使用getSystemClassLoader()也不应该返回null:(Can
classLoader.getResource(fileName)我没有考虑这个问题。让我把我试图找到的文件移到一个不在我的PC机最深处的文件夹中,然后再试一次,或者,比如,在我的桌面上创建一个新文件,看看它是否有效。
-调用并输出它?但这不应该是
null
,因为
getFile()
如果找不到它,将返回一个空字符串。也尝试过了。看起来只是因为我要查找的文件无法在我的PC上找到,不管是什么原因-通过切换到使用getPath()解决了这个问题在File对象上,并接收到FIleNotFoundException。不管我继续努力,您给出的答案确实帮助我找出了问题所在0:-)