Wie Sie Ihre Java-Version prüfen (Windows, macOS, Linux): java -version & javac -version

目次

1. Was Sie in diesem Artikel lernen werden (Kurzfassung)

Auf dieser Seite stellen wir den schnellsten Weg zusammen, um Ihr Ziel zu erreichen, „die Java-Version über die Befehlszeile zu prüfen.“
Um das Fazit gleich zu Beginn zu teilen, sind die Befehle, die Sie normalerweise verwenden, diese beiden:

  • Die tatsächlich ausgeführte Java-Versionjava -version
  • Die JDK‑ (Compiler‑)Version für die Entwicklungjavac -version

In realen Umgebungen kommt es jedoch sehr häufig vor, dass „die erwartete Version nicht die ist, die angezeigt wird.“
Dieser Artikel listet nicht nur Befehle auf – er erklärt auch warum die Diskrepanz entsteht und wie man sie behebt.

1.1 Was Sie nach dem Lesen tun können

Am Ende werden Sie in der Lage sein, Folgendes zu tun:

  • Überprüfen Sie sofort Ihre Java-Version wp:list /wp:list
    • Verwenden Sie java -version und javac -version sicher für den richtigen Zweck
  • Verstehen Sie, wie man unter Windows / macOS / Linux prüft wp:list /wp:list
    • Überprüfen Sie Java unter Berücksichtigung gängiger betriebssystemspezifischer Unterschiede
  • Ermitteln Sie, welches Java verwendet wird, selbst wenn mehrere Versionen installiert sind wp:list /wp:list
    • Beheben Sie das Problem „Ich habe es installiert, aber eine ältere Version wird weiterhin angezeigt“ selbstständig
  • Verstehen Sie die typischen Ursachen und Lösungen, wenn die angezeigte Version nicht Ihrer Erwartung entspricht wp:list /wp:list
    • Lernen Sie die Grundlagen von PATH, JAVA_HOME und Einstellungen zum Versionswechsel

1.2 Zielgruppe (Anfänger willkommen)

  • Sie müssen Java verwenden und möchten zuerst wissen, welches Java auf Ihrem PC installiert ist
  • Ihnen wurde gesagt „Java 17 erforderlich“ oder „Nur Java 8“, und Sie müssen Ihre aktuelle Version prüfen
  • Sie haben einen Befehl ausgeführt und eine andere Version erhalten als erwartet, und Sie kommen nicht weiter
  • java funktioniert, aber javac nicht, und Sie verstehen die Unterschiede zwischen JRE und JDK nicht vollständig

1.3 Ein wichtiger Punkt, den Sie von Anfang an wissen sollten (Sehr wichtig)

Die meiste Verwirrung beim Prüfen der Java-Version lässt sich auf diesen einen Punkt zurückführen:

  • „Auf dem Rechner installiertes Java“ ist nicht dasselbe wie „das tatsächlich ausgeführte Java.“

Wenn mehrere Java-Installationen vorhanden sind, ist das ausgeführte Java das, das zur Laufzeit am höchsten priorisierten Ort gefunden wird. Deshalb kann das Ergebnis von java -version nicht „die neueste, gerade installierte Version“ sein.

Mit diesem Unterschied im Hinterkopf erklärt dieser Artikel in folgender Reihenfolge:

  • Was zuerst auszuführen ist (der kürzeste Weg)
  • Was als Nächstes zu prüfen ist, um die Ursache zu ermitteln (Untersuchungsschritte)
  • Wie man es behebt (Lösungs­schritte)

Schritt für Schritt.

2. Start hier: Befehlsliste zur Java‑Version‑Prüfung (Kopieren & Einfügen)

Sie benötigen nicht viele Befehle, um Ihre Java-Version zu prüfen.
Wenn Sie sich nur an diesen Abschnitt erinnern, lösen Sie etwa 90 % der Fälle.

2.1 Prüfen der zur Laufzeit verwendeten Java-Version

java -version

Dieser Befehl zeigt die Version von Java, das gerade auf diesem PC ausgeführt wird.
Er ist die grundlegendste – und wichtigste – Methode, um Ihre Java-Umgebung zu bestätigen.

Was die Ausgabe typischerweise enthält (Beispiel)

  • Die Java-Versionsnummer (z. B. 17 / 21 / 1.8 usw.)
  • Die Implementierung (OpenJDK / Oracle JDK usw.)
  • Details zur Laufzeitumgebung wie 64‑Bit / Server‑VM

Der entscheidende Punkt ist: Es greift auf das java zu, das in Ihrem PATH die höchste Priorität hat.
Es geht nicht darum, „wo Sie Java installiert haben“, sondern „welches Java aufgerufen wird.“
Behalten Sie das im Hinterkopf.

2.2 Prüfen der Java-Entwicklungsumgebung (JDK)-Version

javac -version

Dieser Befehl zeigt die Version des Java‑Compilers (javac).

Was das Ihnen sagt

  • Ob das JDK korrekt installiert ist
  • Ob Sie Java nicht nur zum Ausführen von Anwendungen, sondern auch für Entwicklung/Builds nutzen können

Wenn dieser Befehl etwas wie folgt ausgibt:

  • „command not found“
  • javac wird nicht als interner oder externer Befehl erkannt“

dann ist es sehr wahrscheinlich, dass das JDK nicht installiert ist oder dass Ihr PATH nicht korrekt gesetzt ist.

2.3 Der Unterschied zwischen java -version und javac -version (häufige Verwirrung bei Anfängern)

CommandWhat It ChecksMain Use
java -versionJava at runtimeRunning apps / verifying runtime behavior
javac -versionCompiler (JDK)Development / builds

Ein häufiges Missverständnis ist:

  • Wenn java -version funktioniert, kann man Java‑Code entwickeln. Das ist nicht korrekt.
  • Nur ausführen → java
  • Entwickeln (kompilieren) → javac

Diese beiden haben unterschiedliche Rollen, daher ist das Prüfen beider der Standardansatz.

2.4 Überprüfung mit einem JDK‑Tool (optional)

Je nach Umgebung kann man die JDK‑Version auch mit folgendem Befehl prüfen:

jshell --version
  • jshell ist ein Tool, das standardmäßig in JDK 9 und später enthalten ist
  • Wenn das funktioniert, ist das ein gutes Zeichen dafür, dass das JDK installiert ist

Das heißt, solange du java -version und javac -version verstehst, reicht das in der Regel aus.

2.5 Empfohlene Reihenfolge zur Überprüfung (anfängerfreundlich)

Wenn du neu dabei bist, reduziert die folgende Reihenfolge die Verwirrung:

  1. java -version → Prüft die zur Laufzeit verwendete Java‑Version
  2. javac -version → Bestätigt, dass das Entwicklungs‑JDK verfügbar ist
  3. Wenn die Ergebnisse nicht deinen Erwartungen entsprechen, siehe den nächsten Abschnitt für OS‑spezifische Prüfungen

3. Wie man java -version liest (Beispielausgabe und Interpretation)

In diesem Abschnitt zerlegen wir, was erscheint, wenn du java -version ausführst, Schritt für Schritt, damit Anfänger nicht verloren gehen.
Damit soll die häufige Situation vermieden werden: „Ich weiß nicht, worauf ich achten soll.“

3.1 Die Grundfunktion von java -version

java -version

Was dieser Befehl dir sagt, ist die Java‑Version, die gerade ausgeführt wird.
Er zeigt nicht eine Liste installierter Java‑Versionen – er zeigt die tatsächlich benutzte Version.

Deshalb wird dieses Ergebnis zur Basis für Dinge wie:

  • Ob du die von einer Anwendung oder einem Tool geforderte Java‑Version erfüllst
  • Ob Produktions‑/Testumgebungen die beabsichtigte Java‑Version laufen lassen
  • Ob unerwartet eine ältere Java‑Version verwendet wird

3.2 Typisches Ausgabe‑Beispiel (Illustration)

Die genaue Formulierung variiert je nach Umgebung, aber du wirst im Allgemeinen so etwas sehen:

java version "17.0.8"
Java(TM) SE Runtime Environment (build 17.0.8+9)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.8+9, mixed mode)

In dieser Ausgabe ist der wichtigste Teil die erste Zeile.

3.3 Was zuerst zu prüfen ist (das ist alles, was du brauchst)

① Versionsnummer

java version "17.0.8"
  • 17 → Java‑17‑Serie
  • 1.8.x → Java 8
  • 21.x → Java 21

In vielen Unternehmen werden LTS‑Releases (Long‑Term Support) wie 8 / 11 / 17 / 21 häufig eingesetzt.
Zuerst solltest du prüfen, ob es die Hauptversion ist, die dein Projekt benötigt.

② Java‑Distribution (Oracle / OpenJDK usw.)

Java(TM) SE Runtime Environment

oder

OpenJDK Runtime Environment

In den meisten Fällen musst du hierfür nicht übermäßig streng sein, wenn es nur um eine Grundüberprüfung geht.
Einige Firmen/Projekte können jedoch ausdrücklich „Oracle JDK“ oder „OpenJDK“ verlangen, sodass es je nach Umgebung relevant sein kann.

③ „64‑Bit“ / „Server‑VM“

64-Bit Server VM
  • In den meisten modernen Umgebungen ist 64‑Bit normal
  • Sofern du keinen besonderen Grund hast, reicht ein kurzer Blick hier aus

3.4 Warum du “eine andere Java‑Version als erwartet” bekommst

Das ist der Punkt, der Anfänger am meisten verwirrt.

Ein häufiges Missverständnis

  • „Ich habe das neueste Java installiert.“
  • „Also sollte java -version die neueste Version anzeigen.“

In Wirklichkeit ist das nicht garantiert.

Der Grund ist simpel:

  • java -version führt das erste java aus, das es mit höchster Priorität im PATH findet

Deshalb.

Mit anderen Worten, wenn:

  • Ein älteres Java weiter vorne im PATH steht
  • Mehrere JDK/JRE‑Installationen gemischt vorhanden sind

dann kann eine andere Java‑Version als die installierte ausgeführt werden.

3.5 java -version prüft das „Ergebnis“, nicht den „Ort“

Als wichtige Denkweise:

  • ❌ Wo Java installiert ist
  • ⭕ Welche Java‑Version tatsächlich ausgeführt wird

Genau dafür ist java -version da.

Zuerst einfach entscheiden, ob das angezeigte Ergebnis korrekt ist.
Falls nicht, verwenden Sie die folgenden Abschnitte, um die Ursache zu ermitteln und zu beheben — das ist der sicherste Ablauf.

4. Wie man javac -version liest (Bestätigung, ob das JDK installiert ist)

Hier erklären wir die Rolle von javac -version und wie man das Ergebnis interpretiert.
Das Verständnis dieses Befehls löst schnell ein häufiges Problem: „Java läuft, aber ich kann nicht entwickeln/bauen.“

4.1 Was ist javac? (Einsteiger‑freundlich)

javac ist die Abkürzung für Java‑Compiler.

  • java → führt ein bereits gebautes Programm aus
  • javac → kompiliert Quellcode (.java)

Damit ergeben sich die Rollen:

  • Wenn Sie nur ausführen möchten → java reicht aus
  • Wenn Sie entwickeln/bauen möchten → javac wird benötigt

Das ist die grundlegende Aufgabenteilung.

4.2 Was Sie aus javac -version lernen

javac -version

Dieser Befehl zeigt die Version des aktuell verwendeten Java‑Compilers an.

Beispielausgabe (Illustration)

javac 17.0.8

Die hier angezeigte Zahl kann betrachtet werden als:

  • Die JDK‑Version selbst
  • Die Baseline‑Java‑Version, die für die Kompilierung verwendet wird

Dieses Verständnis reicht in den meisten realen Situationen aus.

4.3 Wichtige Hinweise, wenn es nicht zu java -version passt

Diese Art von Diskrepanz tritt häufig in der Praxis auf:

  • java -version → 17
  • javac -version → 11

In diesem Fall haben Sie ein inkonsistentes Setup:

  • Laufzeit: Java 17
  • Entwicklung: Java 11

Probleme, die diese Diskrepanz verursachen kann

  • Sie können neuere Sprachfeatures nicht nutzen
  • Der Build gelingt, aber Laufzeit‑Fehler treten auf
  • Das Verhalten unterscheidet sich zwischen CI und lokaler Umgebung

Daher ist es als Grundregel am sichersten, beide Versionen anzugleichen.

4.4 Wenn javac nicht gefunden wird (häufige Fehler)

Mögliche Meldungen sind zum Beispiel:

  • javac wird nicht als interner oder externer Befehl erkannt“
  • „command not found: javac“

In diesem Fall liegen die wahrscheinlichen Ursachen fast immer in einem der beiden Punkte vor:

Ursache 1: Das JDK ist nicht installiert

  • Es ist nur das JRE (Runtime) installiert
  • Entwicklungswerkzeuge sind nicht enthalten

Ursache 2: PATH ist nicht gesetzt

  • Das JDK ist installiert, aber das bin‑Verzeichnis ist nicht im PATH enthalten

Sie können diese beiden Fälle zuverlässig in den OS‑spezifischen Bestätigungsabschnitten unterscheiden.

4.5 javac -version als Hinweis „Kann ich entwickeln?“

Wenn Sie Anfänger sind, hilft Ihnen diese Eselsbrücke, Verwirrungen zu vermeiden:

  • java -version → Kann ich Java ausführen?
  • javac -version → Kann ich Java entwickeln/bauen?

Wenn beide Befehle die erwarteten Versionen anzeigen,
ist Ihre Java‑Umgebung in einem Zustand, in dem die minimal notwendige Einrichtung abgeschlossen ist.

5. Wie man die Java‑Version unter Windows prüft

Dieser Abschnitt erklärt wie man die Java‑Version unter Windows prüft, inklusive Punkte, die in der Praxis häufig zu Problemen führen.
Da Windows ein Betriebssystem ist, in dem mehrere Java‑Installationen häufig nebeneinander existieren, ist die Reihenfolge der Prüfungen besonders wichtig.

5.1 Prüfung über die Eingabeaufforderung / PowerShell (Grundlegend)

Zunächst beginnen Sie mit der einfachsten Methode.

  1. Öffnen Sie Eingabeaufforderung oder PowerShell
  2. Führen Sie den folgenden Befehl aus
    java -version
    

Wenn Sie mit Java entwickeln wollen, prüfen Sie zusätzlich diesen Befehl:

javac -version

An diesem Punkt:

  • Wenn beide Versionen wie erwartet sind → Kein Problem
  • Wenn die Version nicht dem Erwarteten entspricht → Ursache in den nächsten Schritten ermitteln

So sollten Sie das Ergebnis beurteilen.

5.2 Ein Windows‑spezifischer Schlüsselbefehl: where java

Unter Windows ist es äußerst wichtig, zu identifizieren, welche java.exe tatsächlich verwendet wird.

where java

Beispielausgabe (Illustration)

C:\Program Files\Java\jdk-17\bin\java.exe
C:\Program Files\Common Files\Oracle\Java\javapath\java.exe

Wenn mehrere Zeilen angezeigt werden, hat die oberste Zeile die höchste Priorität und ist diejenige, die tatsächlich ausgeführt wird.

5.3 Warum eine alte Java-Version auch nach der Installation verwendet wird

Häufige Ursachen unter Windows umfassen:

  • Eine ältere Java-Installation ist noch vorhanden
  • javapath erscheint früher in PATH
  • JAVA_HOME und PATH stimmen nicht überein

Insbesondere, wenn das folgende Verzeichnis in PATH enthalten ist:

C:\Program Files\Common Files\Oracle\Java\javapath

führt es oft dazu, dass eine unbeabsichtigte Java-Version aufgerufen wird.

5.4 So überprüfen Sie JAVA_HOME (Windows)

Als Nächstes überprüfen Sie JAVA_HOME.

echo %JAVA_HOME%
  • Wenn nichts angezeigt wird → JAVA_HOME ist nicht gesetzt
  • Wenn ein unerwarteter Pfad angezeigt wird → Es könnte auf eine alte Java-Version hinweisen

Beispiel für eine korrekte Einstellung

C:\Program Files\Java\jdk-17

Beachten Sie, dass es auf das JDK-Rootverzeichnis hinweisen sollte, nicht auf das bin-Verzeichnis.

5.5 Sichere Checkliste für Windows

Für Anfänger hilft es, in dieser Reihenfolge zu überprüfen, um Verwirrung zu vermeiden:

  1. java -version
  2. javac -version
  3. where java
  4. echo %JAVA_HOME%

Wenn alle vier Überprüfungen korrekt aussehen,
können Sie schließen, dass Ihre Java-Umgebung unter Windows richtig konfiguriert ist.

5.6 Die Überprüfung über die GUI (Umgebungsvariablen-Bildschirm) kann warten

Windows bietet auch einen GUI-Bildschirm zum Anzeigen und Bearbeiten von Umgebungsvariablen, aber:

  • Welches Java verwendet wird
  • Warum es eine Abweichung gibt

werden viel genauer durch Ausgabe der Befehle beurteilt.

Verwenden Sie die GUI, wenn Sie Einstellungen korrigieren müssen,
aber überprüfen Sie immer mit Befehlen**—das ist der praktische Ansatz.

6. So überprüfen Sie die Java-Version unter macOS

Dieser Abschnitt erklärt wie man die Java-Version unter macOS überprüft.
Im Gegensatz zu Windows hat macOS einen systemweiten Mechanismus zur Verwaltung von JDKs, daher hilft das Kenntnis der speziellen Befehle, Verwirrung zu vermeiden.

6.1 Überprüfen Sie die grundlegenden Befehle im Terminal

Zuerst beginnen Sie mit denselben grundlegenden Befehlen, die überall verwendet werden.

  1. Öffnen Sie Terminal
  2. Führen Sie den folgenden Befehl aus
    java -version
    

Wenn Sie mit Java entwickeln planen, überprüfen Sie auch:

javac -version

Wenn diese zwei Ergebnisse wie erwartet sind,
ist die Java-Umgebung die tatsächlich unter macOS verwendet wird in Ordnung.

6.2 Hinweis: macOS verwaltet JAVA_HOME automatisch

Unter macOS ist es üblich, JAVA_HOME nicht hart zu kodieren,
sondern es dynamisch mit einem Systembefehl abzurufen.

Der repräsentative Befehl ist:

/usr/libexec/java_home

Beispielausgabe (Illustration)

/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home

Dieser Pfad ist das Home-Verzeichnis des aktuellen Standard-JDK.

6.3 Auflisten der installierten JDKs

Wenn mehrere JDKs installiert sind, ist der folgende Befehl äußerst nützlich:

/usr/libexec/java_home -V

Das Ausführen dieses Befehls zeigt an:

  • Installierte JDK-Versionen
  • Anbieter (Oracle / OpenJDK-basiert usw.)
  • Unterstützte Architekturen

Unter macOS ist dies der sicherste Weg, um zunächst zu bestätigen welche JDKs tatsächlich installiert sind.

6.4 Wenn java -version und java_home nicht übereinstimmen

Sie könnten auf eine Situation wie diese stoßen:

  • /usr/libexec/java_home → Java 17
  • java -version → Java 11

In solchen Fällen sind die wahrscheinlichen Ursachen:

  • JAVA_HOME ist in Shell-Konfigurationsdateien festgelegt ( .zshrc / .bashrc )
  • Ein anderes Java erscheint früher in PATH
  • Ein mit Homebrew installiertes Java hat Vorrang

Unter macOS haben Benutzerebene-Einstellungen Vorrang,
daher haben Shell-Konfigurationsdateien einen starken Einfluss.

6.5 Sichere Checkliste für macOS

Unter macOS hält das Überprüfen in dieser Reihenfolge die Dinge organisiert:

  1. java -version
  2. javac -version
  3. /usr/libexec/java_home
  4. /usr/libexec/java_home -V

Mit diesen vier Überprüfungen können Sie genau verstehen:

  • Das derzeit verwendete Java
  • Die Liste der installierten Java-Versionen
  • Das Standard-JDK

ohne Mehrdeutigkeit.

6.6 Denken Sie in Bezug auf „Umschalten“ unter macOS

Unter macOS ist es üblich, dass:

  • Verschiedene Projekte unterschiedliche Java-Versionen erfordern
  • Sie zwischen mehreren JDKs umschalten

Daher:

  • Gehen Sie nicht davon aus, dass es nur eine Java gibt
  • Bestätigen Sie immer welche Java derzeit verwendet wird

Diese Denkweise erleichtert es erheblich, Probleme zu vermeiden.

7. So überprüfen Sie die Java-Version unter Linux

Diese Sektion erklärt wie man die Java-Version in Linux-Umgebungen überprüft, insbesondere für Servernutzung.
Während die Verwaltungsmethoden je nach Distribution unterschiedlich sind, sind die Kernkonzepte dieselben.

7.1 Beginnen Sie mit den grundlegenden Befehlen

Auch unter Linux beginnen Sie mit den gängigen Befehlen:

java -version

Wenn Entwicklung oder Builds erforderlich sind, überprüfen Sie auch:

javac -version

Mit diesen zwei Befehlen können Sie feststellen, ob:

  • Die zur Laufzeit verwendete Java
  • Die für die Kompilierung verwendete JDK

Ihrer Erwartungen entsprechen.

7.2 Verwenden Sie which java, um die tatsächliche Binärdatei zu finden

Unter Linux ist es wichtig zu wissen welche ausführbare Datei tatsächlich aufgerufen wird.

which java

Beispielausgabe

/usr/bin/java

Dieser Pfad ist die tatsächliche Java-Binärdatei, die von java -version verwendet wird.

Wenn Sie mehr Details benötigen, führen Sie aus:

ls -l $(which java)

Dies ermöglicht es Ihnen, den symbolischen Link zu seinem echten Ziel zu verfolgen.

7.3 Verwalten mehrerer Java-Versionen auf Debian / Ubuntu (update-alternatives)

Auf Servern ist es sehr üblich, mehrere Java-Versionen installiert zu haben.
Auf Debian/Ubuntu-basierten Systemen werden diese oft mit update-alternatives verwaltet.

Java-Alternativen auflisten

update-alternatives --list java

Die aktuelle Auswahl überprüfen

update-alternatives --display java

Der hier angezeigte Pfad ist die auf Systemebene ausgewählte Java.

7.4 Wenn java -version und Alternativen nicht übereinstimmen

Gelegentlich können Sie eine Abweichung sehen wie:

  • update-alternatives → Java 17
  • java -version → Java 11

Mögliche Ursachen umfassen:

  • Eine andere Java erscheint im Benutzer-PATH
  • Eine manuell installierte Java existiert in /usr/local/bin , etc.
  • PATH unterscheidet sich zwischen normaler Ausführung und sudo

Unter Linux können sowohl:

  • Systemebenen-Einstellungen
  • Benutzerebenen-Umgebung

beeinflussen, welche Java ausgeführt wird.

7.5 Sichere Checkliste für Linux

Unter Linux hält die Überprüfung in dieser Reihenfolge die Dinge klar:

  1. java -version
  2. javac -version
  3. which java
  4. update-alternatives --display java (falls zutreffend)

Dies gibt Ihnen ein vollständiges Bild von:

  • Der derzeit laufenden Java
  • Der tatsächlichen ausführbaren Datei
  • Der Systemkonfiguration

auf einen Blick.

8. Warum die angezeigte Java-Version abweicht (Ursachen und Lösungen)

Die meisten Java-Version-Probleme werden nicht durch die Befehle selbst verursacht, sondern durch die Umgebungskonfiguration.
Hier fassen wir Ursachen zusammen, die für alle Betriebssysteme gelten.

8.1 Ursache 1: Die PATH-Priorität ist nicht das, was Sie erwarten

Dies ist die häufigste Ursache.

  • Ein altes Java-bin-Verzeichnis erscheint früher in PATH
  • Sie haben eine neue Java installiert, aber PATH nicht aktualisiert

So beheben Sie es

  • Ermitteln Sie, welche Java tatsächlich läuft
  • Entfernen Sie unnötige PATH-Einträge oder korrigieren Sie deren Reihenfolge

Einfach einen neuen Pfad „hinzuzufügen“ reicht oft nicht aus.

8.2 Ursache 2: JAVA_HOME stimmt nicht mit der laufenden Java überein

  • JAVA_HOME → Java 11
  • Laufende Java → Java 17

Diese Situation ist ebenfalls sehr häufig.

So beheben Sie es

  • Setzen Sie JAVA_HOME auf das JDK-Root-Verzeichnis
  • Stellen Sie sicher, dass PATH $JAVA_HOME/bin verwendet

Denken Sie an JAVA_HOME als „Referenz“ und PATH als „Ausführungspriorität“.

8.3 Ursache 3: java und javac verwenden unterschiedliche Versionen

Dies ist ein klassischer Fall von gemischten JRE- und JDK-Versionen.

  • Laufzeit funktioniert
  • Entwicklung oder Builds scheitern

So beheben Sie es

  • Wählen Sie eine JDK als Standard
  • Richten Sie java und javac unter derselben JDK aus

8.4 Ursache 4: IDE oder Build-Tools verwenden eine andere JDK

  • Alles sieht im Terminal in Ordnung aus
  • Fehler treten in der IDE oder CI auf

In diesen Fällen ist die Ursache oft IDE-spezifische JDK-Einstellungen.

So beheben Sie es

  • Überprüfen Sie ausdrücklich das im IDE‑Einstellungen verwendete JDK
  • Verlassen Sie sich nicht ausschließlich auf die „Auto‑Erkennung“

9. Eine Checkliste, die über das bloße „Überprüfen“ hinausgeht

Abschließend organisieren wir was Sie tun sollten, nachdem Sie Ihre Java‑Version überprüft haben.

9.1 Wenn Ihr Ziel nur das Ausführen von Java ist

  • Erfüllt java -version die Anforderungen?
  • Startet die Anwendung korrekt?

9.2 Wenn Ihr Ziel Entwicklung oder Builds ist

  • Erfüllt javac -version die Anforderungen?
  • Zeigen java und javac dieselbe Version an?
  • Sind JAVA_HOME und PATH aufeinander abgestimmt?

9.3 Wenn Sie mehrere Java‑Versionen verwenden

  • Bestätigen Sie stets, welches Java gerade verwendet wird
  • Verstehen Sie die betriebssystemspezifische Verwaltung (macOS / Linux)

10. FAQ (Häufig gestellte Fragen)

10.1 Was ist der Unterschied zwischen java -version und javac -version?

java -version prüft die Java‑Laufzeitversion,
während javac -version die Version des Entwicklungs‑Compilers (JDK) prüft.
Da sie unterschiedliche Zwecke erfüllen, ist das Prüfen beider die gängige Praxis.

10.2 Warum wird javac nicht gefunden?

  • Das JDK ist nicht installiert
  • PATH ist nicht korrekt gesetzt

In den meisten Fällen ist es einer dieser beiden Gründe.

10.3 Ich habe Java installiert, aber es wird immer noch eine alte Version angezeigt

Das bedeutet normalerweise, dass ein anderes Java in PATH eine höhere Priorität hat.
Überprüfen Sie die tatsächliche Binärdatei mit where java (Windows) oder which java (macOS/Linux).

10.4 Kann ich mehrere Java‑Versionen sicher verwenden?

Ja, das ist möglich.
Allerdings ist es entscheidend, stets zu wissen, welches Java gerade verwendet wird.

10.5 Welche Java‑Version sollte ich verwenden?

Falls keine besonderen Anforderungen bestehen, ist die Wahl einer LTS (Long‑Term‑Support)‑Version die sicherste Option.
Wenn Ihr Projekt eine Version vorgibt, hat diese Anforderung stets Vorrang.