Installare Java 8 e Java 11 su Debian 13 e Debian 12
Debian non contiene né Java 8 né, a partire da Debian 12, Java 11. Ecco come installare comunque entrambe le versioni in modo pulito con apt, tramite il repository Adoptium con Eclipse Temurin.
Vuoi installare Java 8 o Java 11 sul tuo server Debian? Una premessa importante: entrambe le versioni sono sparite dai repository ufficiali di Debian. Né Debian 13 (Trixie) né Debian 12 (Bookworm) contengono openjdk-8 o openjdk-11. Un apt install openjdk-11-jre-headless lì fallisce e basta. La strada affidabile passa per Eclipse Temurin.
Requisiti
Ti serve un accesso SSH con privilegi di root (oppure un utente con permessi sudo) su un Debian aggiornato. Consigliamo Debian 13 "Trixie" e Debian 12 "Bookworm". Debian 10 ha raggiunto la fine del supporto a giugno 2024 e non riceve più aggiornamenti di sicurezza regolari.
Quale versione di Debian gira sul tuo sistema lo mostra questo comando:
cat /etc/os-release
Aggiorna poi l'elenco dei pacchetti e installa gli aggiornamenti disponibili:
apt update && apt upgrade -y
Quale versione di Java porta con sé quale Debian?
Questa panoramica mostra che cosa si trova davvero nei repository ufficiali di Debian (situazione a luglio 2026):
| Pacchetto | Debian 13 | Debian 12 | Debian 11 |
|---|---|---|---|
| openjdk-8-jre-headless | non incluso | non incluso | non incluso |
| openjdk-11-jre-headless | non incluso | non incluso | 11.0.31 |
| openjdk-17-jre-headless | non incluso | 17.0.19 | 17.0.19 |
| openjdk-21-jre-headless | 21.0.11 | non incluso | non incluso |
| openjdk-25-jre-headless | 25.0.3 | non incluso | non incluso |
Per Java 8 in Debian non esiste quindi più alcun pacchetto, e Java 11 si trova soltanto in Debian 11. Se un pacchetto è disponibile sul tuo sistema puoi verificarlo in ogni momento da solo:
apt-cache policy openjdk-11-jre-headless
Se sotto "Candidato" compare la voce (nessuno), il pacchetto non è presente nella tua versione di Debian.
Di quale versione di Java hai davvero bisogno?
Java 8 e Java 11 sono versioni LTS ormai datate. Il software attuale punta di norma su Java 17 o Java 21, però alcune applicazioni server (per esempio vecchi server Minecraft, plugin o gestionali aziendali cresciuti negli anni) girano ancora soltanto con Java 8 o Java 11. Installa quindi una versione più vecchia solo se la tua applicazione la richiede esplicitamente. Controlla prima nella documentazione se non sia supportata anche una release più recente, perché quest'ultima riceve aggiornamenti di sicurezza molto più a lungo.
Installare Java 8 e Java 11 tramite il repository Adoptium
Eclipse Temurin è una build OpenJDK liberamente disponibile. Il repository Adoptium mette a disposizione per Debian 13 le versioni dalla 8 alla 26, e la stessa sorgente pacchetti è utilizzabile anche su Debian 12. In questo modo installi qualsiasi versione di Java ti serva, indipendentemente da ciò che porta con sé la tua distribuzione, e la aggiorni poi del tutto normalmente con apt.
Configurare il repository Adoptium
Installa prima i pacchetti di supporto necessari e crea la directory per le chiavi dei repository:
apt install -y wget gpg apt-transport-https ca-certificates
mkdir -p /etc/apt/keyrings
Scarica poi la chiave di firma e registra la sorgente pacchetti. La riga sources rimanda con signed-by= esplicitamente a questa singola chiave, che vale quindi soltanto per questo 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
Installare Java 8
apt install temurin-8-jre -y
La variante jre contiene solo l'ambiente di runtime e basta per eseguire applicazioni Java. Se ti serve anche un compilatore, installa invece temurin-8-jdk.
Installare Java 11
apt install temurin-11-jre -y
Vale lo stesso anche qui: per sviluppo e compilazione prendi temurin-11-jdk.
Installare Java 11 su Debian 11 dal repository
Se sul tuo server gira ancora Debian 11 "Bullseye", OpenJDK 11 si trova lì ancora nel repository ufficiale:
apt install openjdk-11-jre-headless -y
Debian 11 riceve però soltanto aggiornamenti di sicurezza LTS limitati. Pianifica un upgrade nel medio termine e passa in quell'occasione a Temurin, così dopo il salto di versione non ti ritrovi senza un pacchetto adatto.
Alternativa: usare la versione standard di Debian
Se la tua applicazione non pretende una versione precisa di Java, ma semplicemente un Java aggiornato, il metapacchetto è la via più comoda:
apt install default-jre-headless -y
A seconda della versione di Debian ne risulta questo Java:
| Distribuzione | Versione Java tramite default-jre-headless |
|---|---|
| Debian 13 | Java 21 |
| Debian 12 | Java 17 |
| Debian 11 | Java 11 |
Su Debian 11 ottieni così esattamente Java 11, mentre sulle versioni di Debian più recenti ricevi una release nettamente più attuale.
Verificare l'installazione
Per concludere controlla se l'installazione è andata a buon fine. Interroga a questo scopo la versione di Java installata:
java -version
Se nell'output compare la versione principale desiderata (quindi 1.8.0 per Java 8 oppure 11.0 per Java 11), l'installazione è riuscita.
Impostare la versione Java predefinita
Se sono installati più JDK, è la gestione alternatives a stabilire quale versione parte quando richiami java. Prima elenca tutte le versioni presenti:
update-alternatives --list java
Poi scegli in modo interattivo la versione desiderata:
update-alternatives --config java
Perché apt-key non andrebbe più usato
Molte guide più vecchie aggiungono le sorgenti esterne con apt-key adv o apt-key add. Questo comando è deprecato da Debian 11, perché una chiave registrata in quel modo diventa valida per tutte le sorgenti pacchetti del sistema. Un repository esterno compromesso potrebbe così infilare di nascosto anche pacchetti di sistema.
La via moderna è esattamente quella mostrata sopra: la chiave finisce come singolo file sotto /etc/apt/keyrings/ e viene assegnata nella riga sources con signed-by= a un solo repository.
Errori frequenti e soluzioni
"Unable to locate package openjdk-8-jre-headless" oppure "openjdk-11-jre-headless": non è un errore della tua installazione. Debian non contiene più alcun pacchetto per Java 8, e Java 11 solo in Debian 11. Installa la versione tramite il repository Adoptium.
"Unable to locate package temurin-8-jre": il repository non è ancora stato letto. Esegui apt update e verifica con cat /etc/apt/sources.list.d/adoptium.list che alla fine della riga ci sia il codename corretto della tua versione di Debian (per esempio bookworm o trixie).
"NO_PUBKEY" o errori di firma durante apt update: la chiave non è stata salvata correttamente. Scaricala di nuovo in /etc/apt/keyrings/adoptium.asc e assicurati che il file non sia vuoto.
java -version mostra la versione sbagliata: un'altra installazione Java è impostata come predefinita. Correggi la cosa con update-alternatives --config java.
Domande frequenti
Perché su Debian 12 apt non trova openjdk-11-jre-headless?
Come installo Java 8 su Debian?
Quale versione di Java ottengo con default-jre-headless?
Perché non dovrei più usare apt-key?
Ha ancora senso usare Java 8?
2022-2026 KernelHost GmbH. Tutti i diritti riservati. Questa guida è protetta dal diritto d'autore. La ripubblicazione su altri siti web, anche parziale o in forma modificata, non è consentita senza il nostro consenso scritto. Le citazioni con indicazione della fonte e un link sono le benvenute.

