Java 17 installeren op Debian 13 en Debian 12
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):
| Pakket | Debian 13 | Debian 12 | Debian 11 |
|---|---|---|---|
| openjdk-8-jre-headless | niet aanwezig | niet aanwezig | niet aanwezig |
| openjdk-11-jre-headless | niet aanwezig | niet aanwezig | 11.0.31 |
| openjdk-17-jre-headless | niet aanwezig | 17.0.19 | 17.0.19 |
| openjdk-21-jre-headless | 21.0.11 | niet aanwezig | niet aanwezig |
| openjdk-25-jre-headless | 25.0.3 | niet aanwezig | niet 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:
| Distributie | Java-versie via default-jre-headless |
|---|---|
| Debian 13 | Java 21 |
| Debian 12 | Java 17 |
| Debian 11 | Java 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?
Waarom meldt Debian 13 Unable to locate package openjdk-17-jre-headless?
Welke Java-versie krijg ik via default-jre-headless?
Wat is het verschil tussen openjdk-17-jre-headless en openjdk-17-jdk?
Hoe stel ik Java 17 in als standaardversie?
2023-2026 KernelHost GmbH. Alle rechten voorbehouden. Deze handleiding is auteursrechtelijk beschermd. Publicatie op andere websites, geheel, gedeeltelijk of in bewerkte vorm, is zonder onze schriftelijke toestemming niet toegestaan. Citeren met bronvermelding en link is uitdrukkelijk welkom.

