Java-Entwicklungsumgebung einrichten: JDK, IDE und erstes Programm
Eine funktionierende Java-Umgebung besteht aus einem JDK, einem korrekt erreichbaren Werkzeugsatz und einer Entwicklungsoberfläche, die zu deinem Lernziel passt. Dieser Guide führt dich vom Download bis zum selbst kompilierten Programm.
Das Wichtigste vorab
Kurzfassung: ca. 1 Minute · vollständiger Artikel: ca. 9 Minuten
- Zum Entwickeln brauchst du ein JDK. Es enthält unter anderem die Laufzeit, den Compiler
javacund das Experimentierwerkzeugjshell. - Für einen stabilen Einstieg ist Java 25 als LTS-Version eine gute Wahl. In Projekten entscheidet jedoch immer die dort festgelegte Java-Version.
- Prüfe nach der Installation sowohl
java --versionals auchjavac --version. Fehlt der Compiler, ist häufig nur eine Laufzeit oder ein falscher Pfad aktiv. JAVA_HOMEzeigt auf das JDK-Verzeichnis, nicht auf dessenbin-Ordner. Derbin-Ordner gehört in den Suchpfad.- IntelliJ IDEA, Eclipse, Apache NetBeans und VS Code können Java-Projekte bearbeiten. Wichtiger als die Marke ist, dass IDE und Terminal dasselbe JDK verwenden.
- Ein erster Kompilierlauf im Terminal macht den Zusammenhang zwischen Quelldatei, Bytecode, Klassenpfad und JVM sichtbar.

Eine IDE allein ist noch keine Java-Entwicklungsumgebung. Entscheidend ist zunächst das JDK: Es stellt die Werkzeuge bereit, mit denen Quellcode übersetzt und Programme gestartet werden. Die IDE setzt darauf auf und übernimmt Komfortaufgaben wie Navigation, Refactoring, Tests und Debugging. Wenn du beide Ebenen auseinanderhalten kannst, lassen sich typische Installationsprobleme deutlich schneller lösen.
JDK, JVM und JRE unterscheiden
Drei Abkürzungen tauchen beim Java-Setup immer wieder auf. Sie beschreiben unterschiedliche Ebenen derselben Plattform:
| Begriff | Aufgabe | Für Einsteiger wichtig |
|---|---|---|
| JVM | Führt Java-Bytecode aus und stellt Laufzeitdienste wie Speicherverwaltung bereit. | Sie ist der eigentliche Ausführungsmechanismus. |
| JRE | Bezeichnet die Laufzeitumgebung aus JVM und benötigten Bibliotheken. | Für aktuelle Entwicklungsinstallationen wird normalerweise kein separates JRE benötigt. |
| JDK | Enthält die Laufzeit sowie Entwicklungswerkzeuge wie javac, java, javadoc und jshell. |
Installiere ein JDK, wenn du Java-Code entwickeln möchtest. |
Die passende Java-Version auswählen
Java erscheint in einem regelmäßigen Veröffentlichungsrhythmus. Nicht jede Ausgabe wird von allen Anbietern gleich lange gepflegt. Java 25 ist eine LTS-Version und eignet sich deshalb gut für Lernumgebungen, die länger stabil bleiben sollen. Java 26 enthält den neueren Sprach- und Plattformstand, ist aber keine LTS-Version.
In einem bestehenden Projekt hast du diese Wahl meist nicht frei: Build-Konfiguration, Frameworks, Bibliotheken und Produktionsumgebung geben die unterstützte Version vor. Installiere dann genau diese oder eine kompatible neuere Patch-Version derselben Hauptausgabe.
Welche JDK-Distribution?
OpenJDK ist die offene Referenzbasis der Java-SE-Implementierungen. Verschiedene Anbieter veröffentlichen daraus fertige JDK-Pakete, beispielsweise OpenJDK-Builds von Oracle, Eclipse Temurin, Amazon Corretto, Azul Zulu oder Oracle JDK. Für die Grundlagen verhalten sich diese Distributionen weitgehend gleich. Unterschiede liegen vor allem bei Installationspaketen, Updatezeiträumen, Supportangeboten und Lizenzbedingungen.
- Wähle die richtige Hauptversion, zum Beispiel 25.
- Achte auf dein Betriebssystem und die Prozessorarchitektur: x64 oder AArch64.
- Beziehe Installationsdateien direkt vom Anbieter.
- Aktualisiere innerhalb deiner gewählten Hauptversion regelmäßig.
- Prüfe Lizenz- und Supportbedingungen, bevor du ein JDK unternehmensweit verteilst.
JDK unter Windows, macOS und Linux installieren
Die konkrete Oberfläche unterscheidet sich je nach Anbieter. Das Ziel bleibt immer dasselbe: Ein JDK-Verzeichnis wird installiert und dessen Werkzeuge müssen im Terminal erreichbar sein.
| System | Empfohlener Weg | Besonderheit |
|---|---|---|
| Windows | MSI-/EXE-Paket eines JDK-Anbieters oder bewusst entpacktes ZIP-Archiv | Installer können PATH und JAVA_HOME teilweise automatisch setzen. |
| macOS | PKG/DMG-Paket oder Paketmanager | /usr/libexec/java_home -V listet erkannte JDKs auf. |
| Linux | Paketverwaltung der Distribution oder Archiv des JDK-Anbieters | Bei mehreren Versionen verwaltet die Distribution häufig Alternativen für java und javac. |
Installiere nicht mehrere Versionen auf Verdacht. Mehrere JDKs sind zwar problemlos möglich, aber nur dann hilfreich, wenn du bewusst zwischen Projekten wechselst und nachvollziehen kannst, welche Version gerade aktiv ist.
Installation und Pfade prüfen
Öffne nach der Installation ein neues Terminal. Bereits geöffnete Fenster kennen geänderte Umgebungsvariablen häufig noch nicht.
java --version
javac --version
jshell --version
java startet die Laufzeit, javac ist der Compiler. Die ersten beiden Befehle sollten dieselbe Hauptversion melden. Zeigen sie unterschiedliche Versionen, verweist dein Suchpfad auf verschiedene JDK-Installationen.
JAVA_HOME und PATH
JAVA_HOME wird vor allem von Build-Werkzeugen und Entwicklungsumgebungen ausgewertet. Der Wert zeigt auf das Wurzelverzeichnis des JDK. Der Ordner bin darunter enthält die ausführbaren Werkzeuge und gehört in PATH.
JAVA_HOME = PFAD_ZUM_JDK
PATH = JAVA_HOME/bin + vorhandener Suchpfad
Nicht auf bin zeigen
Wenn JAVA_HOME bereits auf den bin-Ordner verweist, hängen Werkzeuge häufig selbst noch bin an und suchen dadurch im falschen Verzeichnis. Die Variable endet beim JDK-Hauptordner.
Eine Java-IDE auswählen
Java verlangt keine bestimmte Entwicklungsoberfläche. Eine gute IDE erkennt das Projektmodell, verwendet das gewünschte JDK und unterstützt dich beim Navigieren, Refaktorieren, Testen und Debuggen.
| Werkzeug | Charakter | Passt gut, wenn … |
|---|---|---|
| IntelliJ IDEA | Java-fokussierte IDE mit starker Codeanalyse | du eine geführte Projektoberfläche und umfangreiche Refactorings möchtest. |
| Eclipse IDE | Offene, erweiterbare Java-IDE | du ein klassisches Workspace-Modell oder Eclipse-basierte Werkzeuge verwendest. |
| Apache NetBeans | Integrierte IDE aus dem Apache-Projekt | du eine kompakte Komplettumgebung mit direktem Java-Einstieg suchst. |
| Visual Studio Code | Leichter Editor, der durch Java-Erweiterungen zur Entwicklungsumgebung wird | du verschiedene Sprachen in einer schlanken Oberfläche bearbeitest. |
Öffne nach dem ersten Start die Projekt- oder SDK-Einstellungen und kontrolliere die konfigurierte Java-Version. Eine IDE kann ein eigenes JDK kennen, obwohl das Terminal noch eine andere Version verwendet.
Das erste Projekt ohne IDE-Magie
Ein manueller Durchlauf ist kein Rückschritt. Er zeigt dir, welche Aufgaben eine IDE später automatisiert. Lege folgende Struktur an:
java-start/
├─ src/
│ └─ de/
│ └─ tinytool/
│ └─ start/
│ └─ HelloJava.java
└─ out/
package de.tinytool.start;
public class HelloJava {
public static void main(String[] args) {
String version = System.getProperty("java.version");
System.out.println("Java läuft – Version " + version);
}
}
Wechsle im Terminal in das Verzeichnis java-start. Der Compiler schreibt die erzeugte Klassendatei nach out; anschließend startet die JVM die Klasse über ihren vollständig qualifizierten Namen.
javac -d out src/de/tinytool/start/HelloJava.java
java -cp out de.tinytool.start.HelloJava
javac übersetzt die Quelldatei in Bytecode. java sucht über den Klassenpfad out nach der kompilierten Klasse und ruft deren main-Methode auf. Genau diese Schritte führt auch eine IDE aus – nur komfortabler und mit einem verwalteten Projektmodell.
Mit JShell experimentieren
Für kleine Sprachversuche brauchst du noch kein Projekt. jshell ist eine interaktive Java-Umgebung, die mit dem JDK geliefert wird. Sie akzeptiert Ausdrücke, Variablen, Methoden und Klassenfragmente.
jshell
jshell> int price = 19;
jshell> int quantity = 3;
jshell> price * quantity
$3 ==> 57
jshell> /exit
JShell eignet sich zum Ausprobieren einer API oder eines Ausdrucks. Für wiederholbare Programme, Tests und Versionsverwaltung bleibt eine normale Projektstruktur die bessere Wahl.
Maven, Gradle und Projektversionen
Größere Java-Projekte werden meist mit Maven oder Gradle gebaut. Diese Werkzeuge laden Abhängigkeiten, kompilieren Quellcode und führen Tests reproduzierbar aus. Für den ersten Quelltext sind sie nicht zwingend nötig, aber du solltest früh verstehen, dass die Java-Version im Projektmodell festgelegt wird.
Nutze in bestehenden Projekten bevorzugt den mitgelieferten Maven- oder Gradle-Wrapper. Er legt die Build-Werkzeugversion fest. Das verwendete JDK muss trotzdem zur Projektkonfiguration passen.
Häufige Setup-Fehler beheben
| Symptom | Wahrscheinliche Ursache | Prüfung |
|---|---|---|
java wird nicht gefunden |
JDK-bin fehlt im Suchpfad oder das Terminal ist zu alt. |
Neues Terminal öffnen und PATH kontrollieren. |
javac fehlt |
Nur eine Laufzeit ist aktiv oder der falsche Installationsordner steht zuerst. | Installationsverzeichnis und javac --version prüfen. |
| IDE und Terminal melden andere Versionen | Die IDE verwendet ein separat konfiguriertes JDK. | Project SDK, Gradle-/Maven-JVM und Terminalversion vergleichen. |
UnsupportedClassVersionError |
Bytecode wurde mit einem neueren JDK erzeugt als die aktive Laufzeit unterstützt. | Compiler- und Laufzeitversion angleichen. |
| Hauptklasse wird nicht gefunden | Klassenpfad, Paketname oder Startverzeichnis stimmen nicht. | -cp, Paketdeklaration und Ausgabeverzeichnis prüfen. |
Java- und Kotlin-Toolchain vergleichen
Java und Kotlin laufen beide auf der JVM und können dasselbe JDK verwenden. Kotlin bringt jedoch einen eigenen Compiler und eigene Build-Plugins mit. Ein vorhandenes JDK ersetzt also nicht die Kotlin-Werkzeuge; es stellt die gemeinsame Laufzeit- und Plattformbasis bereit.
Java
- Compiler:
javac - Interaktive Shell:
jshell - Start:
java - Quelldateien:
.java
Kotlin/JVM
- Compiler:
kotlincoder Build-Plugin - REPL je nach Tooling
- Ausführung auf der JVM
- Quelldateien:
.kt
Für ein reines Java-Lernprojekt brauchst du Kotlin nicht zu installieren. In einem gemischten Projekt sollte das Build-System beide Compiler und ihre Reihenfolge festlegen.
Best Practices und Checkliste
Gute Ausgangslage
- JDK aus einer offiziellen Anbieterquelle
- Projektversion bewusst gewählt
javaundjavacauf derselben Hauptversion- IDE verwendet das Projekt-JDK
- Erster Build auch außerhalb der IDE verstanden
- Regelmäßige Sicherheits- und Patch-Updates
Warnsignale
- Mehrere zufällige JDKs im Suchpfad
JAVA_HOMEendet aufbin- Downloads aus unbekannten Portalen
- Projekt funktioniert nur über einen IDE-Button
- Produktionsversion und Entwicklungsversion sind undokumentiert verschieden
- Veraltete Java-Version bleibt ohne fachlichen Grund aktiv
Glossar
- Bytecode
- Plattformunabhängige Zwischenform, die der Java-Compiler erzeugt und die JVM ausführt.
- JDK
- Java Development Kit mit Laufzeit und Entwicklungswerkzeugen.
- JVM
- Java Virtual Machine zur Ausführung von Java-Bytecode.
- Klassenpfad
- Liste von Verzeichnissen und Archiven, in denen die JVM nach Klassen sucht.
- LTS
- Long-Term Support; eine Version, für die ein Anbieter einen längeren Pflegezeitraum vorsieht.
- IDE
- Integrierte Entwicklungsumgebung zum Bearbeiten, Ausführen, Testen und Debuggen von Code.
- JShell
- Interaktive Java-Shell für kurze Sprach- und API-Experimente.
Fazit: Erst die Werkzeugkette verstehen, dann den Komfort nutzen
Eine belastbare Java-Umgebung beginnt mit einem passenden JDK und überprüfbaren Befehlen. Wenn java und javac dieselbe Version melden und du ein kleines Programm selbst kompilieren kannst, steht das technische Fundament.
Die praktische Leitlinie: Nutze anschließend die IDE, die deinen Arbeitsstil unterstützt. Halte Java-Version, Build-Werkzeug und Projektkonfiguration nachvollziehbar – dann bleibt dein Setup auch bei einem IDE-Wechsel oder im Team reproduzierbar.



tiny-tool.de
tiny-tool.de