Java e JVM (la macchina virtuale di Java) sono necessari per molti tipi di software, inclusi Tomcat, Jetty, Glassfish, Cassandra e Jenkins.
In questa guida esploreremo come installare Java Runtime Environment (JRE) e Java Developer Kit (JDK) in Debian 11.
Controlla anche:
- Come installare Java 17 in Ubuntu 20.04
- Come installare Java 17 in Fedora 35
- Come installare Java 17 su Rocky Linux 8/Centos 8
- Installazione e configurazione di Jenkins su Ubuntu 20.04
Prerequisiti
- Sistema Debian 11 aggiornato
- Accesso root o utente con accesso sudo
- Accesso a Internet dal server
Indice dei contenuti
- Assicurarsi che il server sia aggiornato
- Installazione di java
- Test dell'installazione
- Attivazione/disattivazione di più versioni Java
- Configurazione della variabile ambientale
Assicurarsi che il server sia aggiornato
Prima di procedere, assicuriamoci che i pacchetti del server e i repository siano aggiornati. Usa questi comandi per raggiungere l'obiettivo:
sudo apt update
sudo apt -y upgrade
Se ci sono pacchetti da aggiornare, il comando sopra potrebbe richiedere un paio di minuti.
Installiamo anche alcuni pacchetti comuni di cui potremmo aver bisogno. Uso vim editor di testo, assicurati che sia installato usando questo comando:
sudo apt install -y vim
Installazione di Java
Verifica se java è installato nel tuo sistema.
$ java -version
-bash: java: command not found
Se vedi java: command not found
quindi significa che java non è installato. Se java è installato, quel comando stamperà la versione java
Il repository predefinito di Debian 11 includeva Java 17. Questo è il modo più semplice per installare JDK usando il pacchetto apt manage.
Puoi cercare java usando questo comando:
sudo apt-cache search openjdk | grep 17
Esegui il comando seguente per installare Java 17 su Debian 11. Installeremo sia JDK che JRE per eseguire applicazioni e applet Java.
sudo apt install openjdk-17-jdk openjdk-17-jre -y
Una volta completata l'installazione, eseguire il comando seguente per verificare se funziona correttamente. Se tutto funziona correttamente, dovresti ottenere un output simile a quello mostrato di seguito.
$ java -version openjdk version "17-ea" 2021-09-14 OpenJDK Runtime Environment (build 17-ea+19-Debian-1) OpenJDK 64-Bit Server VM (build 17-ea+19-Debian-1, mixed mode, sharing)
Per verificare se il JDK è installato correttamente, verificheremo la versione di javac, che è il compilatore Java.
$ javac -version javac 17-ea
Test dell'installazione
Verifichiamo che Java 17 sia installato correttamente in questo passaggio creando un semplice script che stampi Java is installed properly
.
Crea la directory e passa ad essa
mkdir simple-app
cd simple-app
Uso vim per creare e modificare file di testo nel mio sistema. Usa l'editor di testo di tua scelta in questo passaggio. Creerò un file Simple.java
usando questo comando:
sudo vim Simple.java
Aggiungi questi contenuti al file
public class Simple{
public static void main(String[] args) {
System.out.println("Citizix - Java is installed properly");
}
}
Ora che abbiamo creato il nostro programma, dobbiamo compilare il codice sorgente Java in bytecode (file di classe) usando il compilatore javac.
javac Simple.java
Otterrai un nuovo file chiamato Simple.class
, che è il file di classe Java compilato.
$ ls
Simple.class Simple.java
Il comando sopra compilerà solo il codice sorgente Java in bytecode. Per eseguire il programma, eseguiamo il comando java con il nome del nostro file di classe come argomento.
java Simple
Se tutto funziona correttamente, vedrai un messaggio "Citizix - Java is installed properly
” sullo schermo.
$ java Simple
Citizix - Java is installed properly
Commutazione di più versioni Java
Se hai più versioni di Java installate nel tuo sistema, puoi configurare quale versione è java
il comando predefinito è.
Usa questo comando per configurarlo
sudo update-alternatives --config java
Ti verrà fornito un elenco di installazioni Java disponibili. In questo caso ho installato sia java 11 che java 17. La versione predefinita è contrassegnata da un asterisco (*). Puoi scegliere di utilizzare una versione diversa inserendo il numero nel prompt.
$ sudo update-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/jvm/java-17-openjdk-amd64/bin/java 1711 auto mode
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode
2 /usr/lib/jvm/java-17-openjdk-amd64/bin/java 1711 manual mode
Press <enter> to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/lib/jvm/java-11-openjdk-amd64/bin/java to provide /usr/bin/java (java) in manual mode
In quanto sopra, ho inserito 1 nel prompt per scegliere Java 11. Confermiamo ora la versione java:
$ java -version
openjdk version "11.0.12" 2021-07-20
OpenJDK Runtime Environment (build 11.0.12+7-post-Debian-2)
OpenJDK 64-Bit Server VM (build 11.0.12+7-post-Debian-2, mixed mode, sharing)
Configurazione della variabile ambientale
Alcune applicazioni Java richiedono la variabile ambientale JAVA_HOME per funzionare correttamente. Alcuni programmi sono molto specifici nel modo in cui vengono eseguiti. Se JAVA_HOME non è impostato, riceverai un errore. L'impostazione di JAVA_HOME impedirà l'insorgere di questo problema.
Per verificare quali installazioni e percorsi Java esistono, utilizzare questo comando:
sudo update-alternatives --config java
Nel mio caso, ottengo che il percorso binario di installazione di Java sia questo /usr/lib/jvm/java-17-openjdk-amd64/bin/java
Imposteremo questo percorso in un file di ambiente /etc/environment
a cui possono accedere tutte le app.
Apri il file con vim:
sudo vim /etc/environment
Ora dobbiamo aggiungere una riga che esporti la home di Java al file come questo export JAVA_HOME=...
facendo in modo che il valore sia il percorso che abbiamo ottenuto per la nostra installazione di Java:
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/bin/java
Questo file imposterà il percorso JAVA_HOME di OpenJDK 17 come variabili ambientali per tutti gli utenti del sistema.
Per applicare la modifica, esegui il comando seguente.
source /etc/environment
Per verificare che la variabile di percorso sia stata applicata, eseguire il comando seguente.
echo $JAVA_HOME
Il percorso dovrebbe essere impostato sul percorso di OpenJDK 17, che hai copiato sopra. Questo è il valore nel mio caso:
$ echo $JAVA_HOME
/usr/lib/jvm/java-17-openjdk-amd64/bin/java
D'ora in poi, non dovrai impostare il percorso JAVA_HOME ogni volta che utilizzi programmi Java. Inoltre, se desideri utilizzare altre versioni di OpenJDK invece della 17, adatta il percorso di conseguenza.
Conclusione
In questo tutorial, hai imparato come installare Java 17 su un sistema Debian 11. Se hai bisogno di ulteriori informazioni sul linguaggio Java, fai riferimento alla sua documentazione ufficiale.