Java 17 installeren op Debian 13 en Debian 12

Gepubliceerd op Bijgewerkt op 5 min leestijd

Debian 12 levert OpenJDK 17 mee, Debian 13 niet meer. Zo installeert u Java 17 op beide versies: met apt of via de Adoptium-repository met Eclipse Temurin.

Wilt u Java 17 op uw Debian server installeren? Eerst iets belangrijks: of een simpele apt install volstaat, hangt af van uw Debian-versie. Debian 12 (Bookworm) levert OpenJDK 17 mee, Debian 13 (Trixie) daarentegen niet meer. Deze handleiding laat voor beide gevallen de juiste weg zien.

Vereisten

U hebt SSH-toegang met rootrechten nodig (of een gebruiker met sudo-rechten) op een actuele Debian. Aanbevolen worden Debian 13 "Trixie" en Debian 12 "Bookworm". Debian 10 heeft in juni 2024 het einde van de support bereikt en krijgt geen reguliere beveiligingsupdates meer, het is daarom niet meer geschikt voor productiegebruik.

Welke Debian-versie bij u draait, laat dit commando zien:

cat /etc/os-release

Werk daarna de pakketlijst bij en installeer de beschikbare updates:

apt update && apt upgrade -y

Welke Java-versie levert welke Debian?

Debian wisselt de meegeleverde OpenJDK-versies bij elke nieuwe hoofdversie om. Een handleiding die zonder meer apt install openjdk-17-jre-headless aanraadt, mislukt daarom op Debian 13. Dit overzicht laat zien wat er werkelijk in de officiële pakketbronnen zit (stand juli 2026):

PakketDebian 13Debian 12Debian 11
openjdk-8-jre-headlessniet aanwezigniet aanwezigniet aanwezig
openjdk-11-jre-headlessniet aanwezigniet aanwezig11.0.31
openjdk-17-jre-headlessniet aanwezig17.0.1917.0.19
openjdk-21-jre-headless21.0.11niet aanwezigniet aanwezig
openjdk-25-jre-headless25.0.3niet aanwezigniet aanwezig

Of een pakket op uw systeem beschikbaar is, controleert u op elk moment zelf:

apt-cache policy openjdk-17-jre-headless

Staat er achter "Kandidaat" een versienummer, dan kunt u meteen installeren. Verschijnt daar (geen), gebruik dan de Temurin-weg verderop.

Java 17 installeren op Debian 12

Op Debian 12 (en net zo op Debian 11) zit OpenJDK 17 in de officiële repository. Eén enkel commando volstaat:

apt install openjdk-17-jre-headless -y

De variant jre-headless bevat alleen de runtime zonder grafische bibliotheken en is daarmee de slanke, passende keuze voor een server, bijvoorbeeld voor een Minecraft-server of een Java-webapplicatie.

Hebt u daarnaast een compiler nodig omdat u Java-applicaties op de server zelf bouwt, installeer dan de volledige JDK:

apt install openjdk-17-jdk -y

Java 17 op Debian 13 installeren via de Adoptium-repository

Debian 13 bevat geen OpenJDK 17 meer, daar is Java 21 de meegeleverde versie. Vereist uw applicatie uitdrukkelijk Java 17, installeer dan Eclipse Temurin. Dat is een vrij beschikbare OpenJDK-build die via een eigen repository wordt aangeboden en daarna gewoon met apt wordt bijgewerkt.

Installeer eerst de hulppakketten en maak de map voor repositorysleutels aan:

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

mkdir -p /etc/apt/keyrings

Daarna downloadt u de handtekeningsleutel en voegt u de pakketbron toe. De sources-regel verwijst met signed-by= uitdrukkelijk naar deze ene sleutel, daardoor geldt hij uitsluitend voor deze 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

Vervolgens installeert u Java 17:

apt install temurin-17-jre -y

Hebt u ook hier een compiler nodig, installeer dan temurin-17-jdk. De Adoptium-repository biedt voor Debian 13 de versies 8 tot en met 26 aan, u bent daarmee dus niet afhankelijk van het aanbod van uw distributie. Voor Debian 12 is dezelfde pakketbron eveneens beschikbaar.

Alternatief: de standaardversie van Debian gebruiken

Als uw applicatie geen bepaalde Java-versie eist maar simpelweg een actuele Java nodig heeft, is het metapakket de makkelijkste weg. Het haalt automatisch de versie binnen die uw distributie als standaard voorziet:

apt install default-jre-headless -y

Dat levert per Debian-versie het volgende Java op:

DistributieJava-versie via default-jre-headless
Debian 13Java 21
Debian 12Java 17
Debian 11Java 11

Op Debian 12 krijgt u daarmee dus precies het gewenste Java 17, zonder dat u het versienummer in de pakketnaam hoeft bij te houden.

Installatie controleren

Controleer tot slot of de installatie geslaagd is. Vraag daarvoor eenvoudig de geïnstalleerde Java-versie op:

java -version

Begint de uitvoer met openjdk version "17, dan is Java 17 correct ingericht en klaar voor gebruik.

Meerdere Java-versies naast elkaar beheren

Staan er meerdere JDK's op de server, dan bepaalt het alternatives-beheer welke versie er bij het aanroepen van java daadwerkelijk start. Alle aanwezige versies somt u zo op:

update-alternatives --list java

De gewenste standaardversie kiest u daarna interactief uit de lijst:

update-alternatives --config java

Heeft een applicatie ook de omgevingsvariabele JAVA_HOME nodig, haal het pad dan uit die lijst en zet het permanent in /etc/environment:

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

Nog onderweg met Debian 11?

Debian 11 "Bullseye" krijgt alleen nog beperkte LTS-beveiligingsupdates, maar bevat OpenJDK 17 nog steeds. Het commando is hetzelfde als onder Debian 12:

apt install openjdk-17-jre-headless -y

Plan op middellange termijn toch een upgrade in, zodat u weer reguliere beveiligingsupdates voor alle pakketten ontvangt.

Veelvoorkomende fouten en oplossingen

"Unable to locate package openjdk-17-jre-headless" onder Debian 13: Dat is geen fout in uw installatie. Debian 13 bevat dit pakket eenvoudigweg niet meer. Installeer Java 17 daar via de Adoptium-repository of stap over op het meegeleverde Java 21.

Dezelfde melding onder Debian 12: Hier is de lokale pakketlijst verouderd of onvolledig. Voer apt update uit en controleer in /etc/apt/sources.list of de hoofdbron van uw Debian-versie is ingevoerd.

java -version meldt een andere versie: Op het systeem staat nog een oudere Java-installatie als standaard ingesteld. Stel de gewenste versie in met update-alternatives --config java.

Handleidingen met apt-key: Oudere artikelen voegen externe bronnen toe via apt-key adv. Dat commando geldt sinds Debian 11 als verouderd, omdat een zo opgeslagen sleutel geldig wordt voor alle pakketbronnen van het systeem. Actuele handleidingen zetten de sleutel in /etc/apt/keyrings/ en verwijzen er in de sources-regel met signed-by= naar.

Uw applicatie start ondanks Java 17 niet: Sommige software controleert bij de start de Java-versie en eist een bepaalde hoofdversie. Werp in dat geval een blik in het logbestand van de applicatie, daar staat meestal de exact vereiste versie.

Veelgestelde vragen

Met welk commando installeer ik Java 17 op Debian?
Dat hangt af van uw Debian-versie. Debian 12 en Debian 11 bevatten het pakket, daar volstaat apt install openjdk-17-jre-headless -y. Debian 13 levert geen OpenJDK 17 meer, daar installeert u Eclipse Temurin via de Adoptium-repository.
Waarom meldt Debian 13 Unable to locate package openjdk-17-jre-headless?
Omdat dit pakket in Debian 13 niet meer bestaat. Debian 13 brengt OpenJDK 21 en OpenJDK 25 mee, maar geen OpenJDK 17. Installeer Java 17 daar via de Adoptium-repository met het pakket temurin-17-jre of stap over op de meegeleverde versie.
Welke Java-versie krijg ik via default-jre-headless?
Het metapakket lost op naar de standaardversie van uw distributie: Debian 13 geeft Java 21, Debian 12 geeft Java 17 en Debian 11 geeft Java 11. Als uw applicatie geen vaste hoofdversie eist, is dat de onderhoudsarmste weg.
Wat is het verschil tussen openjdk-17-jre-headless en openjdk-17-jdk?
Het pakket jre-headless bevat alleen de runtime zonder grafische bibliotheken en is genoeg om Java-applicaties op een server uit te voeren. De JDK brengt daarnaast de compiler mee en is nodig als u Java-programma's direct op de server bouwt.
Hoe stel ik Java 17 in als standaardversie?
Met update-alternatives --list java ziet u alle geïnstalleerde Java-versies. Via update-alternatives --config java kiest u daarna interactief de gewenste versie.

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