Hilfreiche NullPointerExceptions
Die JVM teilt automatisch mit, welche Variable null war.
Code-Vergleich
✕ 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!
Problem mit diesem Code entdeckt? Sag uns Bescheid.
Warum der moderne Weg gewinnt
Exakte Variable
Die Meldung nennt die null-Variable in der Aufrufkette.
Schnelleres Debuggen
Kein Rätselraten mehr, welcher der fünf verketteten Aufrufe null war.
Kostenloses Upgrade
Keine Codeänderungen – einfach auf JDK 14+ ausführen.
Alter Ansatz
Kryptische NPE
Moderner Ansatz
Detaillierte NPE
Seit JDK
14
Schwierigkeitsgrad
Einsteiger
JDK-Unterstützung
Hilfreiche NullPointerExceptions
Verfügbar
Seit JDK 14 allgemein verfügbar (März 2020)
Wie es funktioniert
Hilfreiche NPEs beschreiben, welcher Ausdruck null war und welche Operation fehlgeschlagen ist. Dies ist seit Java 14 standardmäßig aktiviert – keine Codeänderung erforderlich, nur das JDK aktualisieren.
Zugehörige Dokumentation