Erfahren Sie, wie Sie den `java.lang.UnsupportedClassVersionError` aufgrund inkonsistenter Java-Versionen in Ihrem System beheben können.
---
Dieses Video basiert auf der Frage https://stackoverflow.com/q/62230509/ gestellt von dem Nutzer 'Anthony' ( https://stackoverflow.com/u/13542207/ ) sowie auf der Antwort https://stackoverflow.com/a/62230560/ bereitgestellt von dem Nutzer 'Thorbjørn Ravn Andersen' ( https://stackoverflow.com/u/53897/ ) auf der Website 'Stack Overflow'. Vielen Dank an diese großartigen Nutzer und die Stackexchange-Community für ihre Beiträge.
Besuchen Sie diese Links, um den Originalinhalt und weitere Details zu sehen, z. B. alternative Lösungen, aktuelle Entwicklungen zum Thema, Kommentare, Versionsverlauf usw. Der ursprüngliche Titel der Frage lautete beispielsweise: Exception in thread "main" java.lang.UnsupportedClassVersionError:
Außerdem steht der Inhalt (außer Musik) unter der Lizenz CC BY-SA https://meta.stackexchange.com/help/l...
Der ursprüngliche Fragenbeitrag steht unter der Lizenz 'CC BY-SA 4.0' ( https://creativecommons.org/licenses/... ), und der ursprüngliche Antwortbeitrag steht unter der Lizenz 'CC BY-SA 4.0' ( https://creativecommons.org/licenses/... ).
Falls Ihnen irgendetwas auffällt oder Unstimmigkeiten bestehen, schreiben Sie mir bitte an vlogize [AT] gmail [DOT] com.
---
Verständnis des java.lang.UnsupportedClassVersionError
Wenn Sie auf den gefürchteten java.lang.UnsupportedClassVersionError gestoßen sind, sind Sie nicht allein. Dieses häufige Problem plagt viele Entwickler, insbesondere beim Übergang von einer IDE (wie NetBeans) zum direkten Ausführen von Java-Anwendungen über die Eingabeaufforderung. In diesem Blogbeitrag analysieren wir, warum dieser Fehler auftritt und vor allem zeigen wir Ihnen eine Lösung, um sicherzustellen, dass Sie Ihren Java-Code korrekt ausführen - unabhängig von Ihrer Umgebung.
Das Problem erklärt
Was passiert hier?
Lassen Sie uns die von Ihnen beschriebene Situation aufschlüsseln. Sie verwenden JDK 14 unter Windows 10, und alles läuft in Ihrer IDE reibungslos. Wenn Sie jedoch versuchen, eine Java-Datei über die Befehlszeile zu kompilieren und auszuführen, stoßen Sie auf den java.lang.UnsupportedClassVersionError. Dieser Fehler weist in der Regel darauf hin, dass Ihr Code mit einer neueren Java-Version kompiliert wurde als die zur Laufzeit aktuell verwendete Version.
Diagnose des Problems
Laut Ihrer Beschreibung:
Wenn Sie die Java-Version über die Eingabeaufforderung im JAVA_HOME-Verzeichnis überprüfen, erhalten Sie:
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
Im Gegensatz dazu zeigt die Version aus JAVA_HOME\bin:
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
Diese Diskrepanz bedeutet, dass Sie Ihr Java-Programm letztlich mit Java 8 ausführen, obwohl es mit Java 14 kompiliert wurde – was den Fehler verursacht.
Die Lösung: Java-Versionen angleichen
Nachdem wir die Ursache des Problems identifiziert haben, sehen wir uns nun an, wie man es beheben kann.
Schritt-für-Schritt-Anleitung
Verstehen Sie die PATH-Variable:
Die Umgebungsvariable PATH bestimmt, welche ausführbaren Dateien beim Ausführen von Befehlen in der Eingabeaufforderung verwendet werden. Wenn eine andere Java-Version weiter vorne in PATH steht, wird diese Version verwendet – und nicht die gewünschte.
Ändern Sie Ihre PATH-Variable:
Um Java 14 erfolgreich auszuführen, müssen Sie den bin-Pfad Ihres JDK 14 an den Anfang der PATH-Variable stellen.
Öffnen Sie Ihre Systemeigenschaften:
Rechtsklicken Sie auf „Dieser PC“ oder „Computer“ und wählen Sie „Eigenschaften“.
Klicken Sie auf „Erweiterte Systemeinstellungen“.
Klicken Sie auf „Umgebungsvariablen“.
Bearbeiten Sie die PATH-Variable:
Suchen Sie in den "Systemvariablen" nach der Variable PATH.
Klicken Sie auf „Bearbeiten“ und fügen Sie C:\java\jdk14\bin ganz vorne in die Liste der Pfade ein. Achten Sie darauf, die Einträge mit einem Semikolon (;) zu trennen.
Überprüfen Sie Ihre Änderungen:
Öffnen Sie eine neue Eingabeaufforderung und geben Sie ein:
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
Nun sollte die Ausgabe die Version 14.0.1 anzeigen.
Fazit
Indem Sie sicherstellen, dass in Ihrer Eingabeaufforderung die richtige Java-Version referenziert wird, können Sie den java.lang.UnsupportedClassVersionError vermeiden und Ihren Entwicklungsprozess reibungsloser gestalten. Denken Sie daran: Konsistenz in Ihrer Entwicklungsumgebung ist der Schlüssel!
Wenn Sie diese Schritte befolgen und weiterhin Probleme haben, können Sie sich gerne für weitere Unterstützung melden. Viel Erfolg beim Programmieren!
Информация по комментариям в разработке