如何解决java.lang.NullPointerException错误?

Jus*_*n k 47 java nullpointerexception

当我运行我的Java程序时,它在这一行上给我一个错误

compiler.getTask(null, null, new DiagnosticCollector<JavaFileObject>(), null, null, compilationUnits);

我得到的错误是:

Exception in thread "main" java.lang.NullPointerException
    at AnotherClassLoader.loadClass(test.java:58)
    at test.main(test.java:30)
    at Main.main(Main.java:68)
Run Code Online (Sandbox Code Playgroud)

你能告诉我怎样才能解决这个错误?

Jer*_*emy 81

NullPointerException意味着您传递的其中一个变量为null,但代码尝试使用它而不是它.

例如,如果我这样做:

Integer myInteger = null;
int n = myInteger.intValue();
Run Code Online (Sandbox Code Playgroud)

代码尝试获取myInteger的intValue,但由于它为null,因此它没有:发生空指针异常.

这意味着你的getTask方法期望一些不是null的东西,但你传递的是null.弄清楚getTask需要什么并传递它想要的东西!


Ehs*_*hmi 7

当您尝试引用空对象实例时,会发生此错误.我无法通过您的给定信息告诉您导致此错误的原因,但您可以在IDE中轻松调试它.我强烈建议您使用异常处理来避免意外的程序行为.