Errors Iniciante

A JVM informa exatamente qual variável era null — sem adivinhação.

✕ Java 8
// Old NPE message:
// "NullPointerException"
// at MyApp.main(MyApp.java:42)
// Which variable was null?!
✓ Java 14+
// Modern NPE message:
// Cannot invoke "String.length()"
// because "user.address().city()"
// is null
// Exact variable identified!
Viu um problema com este código? Nos avise.
🔍

Variável exata

A mensagem identifica a variável null na cadeia de chamadas.

Depuração mais rápida

Chega de adivinhar qual das 5 chamadas encadeadas era null.

🆓

Atualização gratuita

Nenhuma alteração de código — basta executar no JDK 14+.

Abordagem Antiga
NPE críptica
Abordagem Moderna
NPE detalhada
Desde o JDK
14
Dificuldade
Iniciante
NullPointerExceptions detalhadas
Disponível

Amplamente disponível desde o JDK 14 (março de 2020)

As NPEs detalhadas descrevem qual expressão era null e qual operação falhou. Isso é habilitado por padrão desde o Java 14 — não é necessário alterar código, basta atualizar o JDK.

Compartilhar 𝕏 🦋 in