Java 17 auf Debian 13 und Debian 12 installieren

Veröffentlicht am Aktualisiert am 5 Min. Lesezeit

Debian 12 liefert OpenJDK 17 mit, Debian 13 nicht mehr. So installieren Sie Java 17 auf beiden Versionen, per apt oder über das Adoptium-Repository mit Eclipse Temurin.

Sie möchten Java 17 auf Ihrem Debian Server installieren? Wichtig vorweg: Ob ein einfaches apt install genügt, hängt von Ihrer Debian-Version ab. Debian 12 (Bookworm) liefert OpenJDK 17 mit, Debian 13 (Trixie) dagegen nicht mehr. Diese Anleitung zeigt für beide Fälle den passenden Weg.

Voraussetzungen

Sie benötigen einen SSH-Zugang mit Root-Rechten (oder einen Benutzer mit sudo-Berechtigung) auf einem aktuellen Debian. Empfohlen werden Debian 13 "Trixie" und Debian 12 "Bookworm". Debian 10 hat im Juni 2024 sein Supportende erreicht und erhält keine regulären Sicherheitsupdates mehr, es eignet sich daher nicht mehr für den produktiven Betrieb.

Welche Debian-Version bei Ihnen läuft, zeigt dieser Befehl:

cat /etc/os-release

Aktualisieren Sie anschließend die Paketliste und spielen Sie vorhandene Updates ein:

apt update && apt upgrade -y

Welche Java-Version liefert welches Debian?

Debian tauscht die enthaltenen OpenJDK-Versionen mit jeder neuen Hauptversion aus. Eine Anleitung, die pauschal apt install openjdk-17-jre-headless empfiehlt, schlägt deshalb auf Debian 13 fehl. Diese Übersicht zeigt, was tatsächlich in den offiziellen Paketquellen liegt (Stand Juli 2026):

PaketDebian 13Debian 12Debian 11
openjdk-8-jre-headlessnicht enthaltennicht enthaltennicht enthalten
openjdk-11-jre-headlessnicht enthaltennicht enthalten11.0.31
openjdk-17-jre-headlessnicht enthalten17.0.1917.0.19
openjdk-21-jre-headless21.0.11nicht enthaltennicht enthalten
openjdk-25-jre-headless25.0.3nicht enthaltennicht enthalten

Ob ein Paket auf Ihrem System verfügbar ist, prüfen Sie jederzeit selbst:

apt-cache policy openjdk-17-jre-headless

Wird unter "Installationskandidat" eine Versionsnummer angezeigt, können Sie direkt installieren. Erscheint dort (keiner), nutzen Sie den Temurin-Weg weiter unten.

Java 17 unter Debian 12 installieren

Auf Debian 12 (und ebenso auf Debian 11) liegt OpenJDK 17 im offiziellen Repository. Ein einziger Befehl genügt:

apt install openjdk-17-jre-headless -y

Die Variante jre-headless enthält nur die Laufzeitumgebung ohne grafische Bibliotheken und ist damit die schlanke, passende Wahl für einen Server, etwa für einen Minecraft-Server oder eine Java-Webanwendung.

Wenn Sie zusätzlich einen Compiler benötigen, weil Sie Java-Anwendungen auf dem Server selbst bauen, installieren Sie das vollständige JDK:

apt install openjdk-17-jdk -y

Java 17 unter Debian 13 über das Adoptium-Repository installieren

Debian 13 enthält kein OpenJDK 17 mehr, dort ist Java 21 die mitgelieferte Version. Benötigt Ihre Anwendung ausdrücklich Java 17, installieren Sie Eclipse Temurin. Das ist ein frei verfügbarer OpenJDK-Build, der über ein eigenes Repository bereitgestellt und anschließend ganz normal per apt aktualisiert wird.

Installieren Sie zuerst die Hilfspakete und legen Sie das Verzeichnis für Repository-Schlüssel an:

apt install -y wget gpg apt-transport-https ca-certificates

mkdir -p /etc/apt/keyrings

Danach laden Sie den Signaturschlüssel herunter und tragen die Paketquelle ein. Die Sources-Zeile verweist per signed-by= ausdrücklich auf diesen einen Schlüssel, dadurch gilt er ausschließlich für dieses Repository:

wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | tee /etc/apt/keyrings/adoptium.asc

echo "deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | tee /etc/apt/sources.list.d/adoptium.list

apt update

Anschließend installieren Sie Java 17:

apt install temurin-17-jre -y

Brauchen Sie auch hier einen Compiler, installieren Sie stattdessen temurin-17-jdk. Das Adoptium-Repository stellt für Debian 13 die Versionen 8 bis 26 bereit, Sie sind damit also nicht auf die Auswahl Ihrer Distribution angewiesen. Für Debian 12 steht dieselbe Paketquelle ebenfalls zur Verfügung.

Alternative: die Standardversion von Debian nutzen

Wenn Ihre Anwendung keine bestimmte Java-Version verlangt, sondern einfach ein aktuelles Java benötigt, ist das Metapaket der bequemste Weg. Es zieht automatisch die Version nach, die Ihre Distribution als Standard vorsieht:

apt install default-jre-headless -y

Das ergibt je nach Debian-Version folgendes Java:

DistributionJava-Version über default-jre-headless
Debian 13Java 21
Debian 12Java 17
Debian 11Java 11

Auf Debian 12 erhalten Sie damit also genau das gewünschte Java 17, ohne die Versionsnummer im Paketnamen mitpflegen zu müssen.

Installation überprüfen

Kontrollieren Sie zum Abschluss, ob die Installation erfolgreich war. Fragen Sie dazu einfach die installierte Java-Version ab:

java -version

Beginnt die Ausgabe mit openjdk version "17, ist Java 17 korrekt eingerichtet und einsatzbereit.

Mehrere Java-Versionen parallel verwalten

Sind auf dem Server mehrere JDKs installiert, entscheidet die Alternatives-Verwaltung darüber, welche Version beim Aufruf von java tatsächlich startet. Alle vorhandenen Versionen listen Sie so auf:

update-alternatives --list java

Die gewünschte Standardversion wählen Sie anschließend interaktiv aus der Liste aus:

update-alternatives --config java

Braucht eine Anwendung zusätzlich die Umgebungsvariable JAVA_HOME, ermitteln Sie den Pfad aus dieser Liste und tragen ihn dauerhaft in /etc/environment ein:

JAVA_HOME="/usr/lib/jvm/java-17-openjdk-amd64"

Noch auf Debian 11 unterwegs?

Debian 11 "Bullseye" erhält nur noch eingeschränkte LTS-Sicherheitsupdates, enthält OpenJDK 17 aber weiterhin. Der Befehl ist derselbe wie unter Debian 12:

apt install openjdk-17-jre-headless -y

Planen Sie mittelfristig trotzdem ein Upgrade ein, damit Sie wieder reguläre Sicherheitsupdates für alle Pakete erhalten.

Häufige Fehler und Lösungen

"Unable to locate package openjdk-17-jre-headless" unter Debian 13: Das ist kein Fehler Ihrer Installation. Debian 13 enthält dieses Paket schlicht nicht mehr. Installieren Sie Java 17 dort über das Adoptium-Repository oder wechseln Sie auf das mitgelieferte Java 21.

Dieselbe Meldung unter Debian 12: Hier ist die lokale Paketliste veraltet oder unvollständig. Führen Sie apt update aus und prüfen Sie in /etc/apt/sources.list, ob die Hauptquelle Ihrer Debian-Version eingetragen ist.

java -version meldet eine andere Version: Auf dem System ist noch eine ältere Java-Installation als Standard hinterlegt. Setzen Sie die gewünschte Version mit update-alternatives --config java.

Anleitungen mit apt-key: Ältere Beiträge binden Fremdquellen über apt-key adv ein. Dieser Befehl gilt seit Debian 11 als abgekündigt, weil ein so hinterlegter Schlüssel für sämtliche Paketquellen des Systems gültig wird. Aktuelle Anleitungen legen den Schlüssel unter /etc/apt/keyrings/ ab und verweisen in der Sources-Zeile per signed-by= darauf.

Ihre Anwendung startet trotz Java 17 nicht: Manche Software prüft die Java-Version beim Start und verlangt eine bestimmte Hauptversion. Werfen Sie in diesem Fall einen Blick in die Logdatei der Anwendung, dort steht in der Regel die exakt geforderte Version.

Häufige Fragen

Mit welchem Befehl installiere ich Java 17 auf Debian?
Das hängt von Ihrer Debian-Version ab. Debian 12 und Debian 11 enthalten das Paket, dort genügt apt install openjdk-17-jre-headless -y. Debian 13 liefert kein OpenJDK 17 mehr, dort installieren Sie Eclipse Temurin über das Adoptium-Repository.
Warum meldet Debian 13 Unable to locate package openjdk-17-jre-headless?
Weil dieses Paket in Debian 13 nicht mehr existiert. Debian 13 bringt OpenJDK 21 und OpenJDK 25 mit, aber kein OpenJDK 17. Installieren Sie Java 17 dort über das Adoptium-Repository mit dem Paket temurin-17-jre oder wechseln Sie auf die mitgelieferte Version.
Welche Java-Version bekomme ich über default-jre-headless?
Das Metapaket löst auf die Standardversion Ihrer Distribution auf: Debian 13 ergibt Java 21, Debian 12 ergibt Java 17 und Debian 11 ergibt Java 11. Wenn Ihre Anwendung keine feste Hauptversion verlangt, ist das der wartungsärmste Weg.
Was ist der Unterschied zwischen openjdk-17-jre-headless und openjdk-17-jdk?
Das Paket jre-headless enthält nur die Laufzeitumgebung ohne grafische Bibliotheken und reicht aus, um Java-Anwendungen auf einem Server auszuführen. Das JDK bringt zusätzlich den Compiler mit und wird gebraucht, wenn Sie Java-Programme direkt auf dem Server bauen.
Wie stelle ich Java 17 als Standardversion ein?
Mit update-alternatives --list java sehen Sie alle installierten Java-Versionen. Über update-alternatives --config java wählen Sie anschließend die gewünschte Version interaktiv aus.

Java 17 OpenJDK Eclipse Temurin Java Debian 13 Debian 12 Debian Java installieren