Como resolver java.idioma.Erro de percepção de ponto final? [duplicado]

esta pergunta já tem uma resposta aqui:

Quando dirijo o meu programa Java, isso dá-me um erro nesta linha

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

o erro que estou a obter é:

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)
Pode dizer - me Como posso resolver este erro?

Author: user207421, 2012-05-05

3 answers

Um ponto final significa que uma das variáveis que estás a passar é nula, mas o código tenta usá-la como não é.

Por exemplo, se eu fizer isto:

Integer myInteger = null;
int n = myInteger.intValue();

O código tenta agarrar o valor do myInteger, mas como ele é nulo, ele não tem um: uma exceção de ponteiro nulo acontece.

O que isto significa é que o teu método de getTask está à espera de algo que não é nulo, mas estás a passar por um nulo. Descobrir o que o getTask precisa e passar o que ele quer!
 78
Author: Jeremy, 2015-09-03 08:01:55

Este erro ocorre quando você tenta se referir a uma instância de objeto nulo. Não posso dizer-lhe o que causa este erro com a sua informação dada, mas você pode depurá-lo facilmente em sua IDE. Recomendo vivamente que usem o tratamento de excepções para evitar um comportamento inesperado do programa.

 7
Author: Ehsan Khodarahmi, 2012-05-05 18:08:52

Apenas um tiro no escuro (uma vez que não partilhou o código de inicialização {[[0]} connosco): a forma como recupera o {[[0]} causa o problema. Aponte o seu JRE para estar dentro do JDK como diferente do jdk, o jre não fornece quaisquer ferramentas, o que resulta em NPE.

 2
Author: aviad, 2012-05-05 18:13:58