Come installare Java su CentOS 8

Java è uno dei linguaggi di programmazione più popolari utilizzati per costruire diversi tipi di applicazioni e sistemi.

Esistono due diverse implementazioni di Java, OpenJDK e Oracle Java, con quasi nessuna differenza tra loro, tranne che Oracle Java ha alcune funzionalità commerciali aggiuntive. Oracle Java Licensepermette solo l’uso non commerciale del software, come l’uso personale e l’uso di sviluppo. OpenJDK è un’implementazione open source della piattaforma Java.

I repository CentOS 8 predefiniti includono le ultime due versioni principali di Java LTS, Java 8 e Java 11.

In questo tutorial, spiegheremo come installare una o più versioni Java (OpenJDK) su CentOS 8 e come impostare il Java predefinito tramite alternative.

Installazione di OpenJDK 11 #

La raccomandazione generale è di installare l’ultima versione di Java LTS version (JDK 11). Alcune applicazioni basate su Java potrebbero richiedere una versione specifica di Java, quindi potrebbe essere necessario consultare la documentazione dell’applicazione.

Per installare OpenJDK 11 su CentOS 8, eseguire il seguente comando come root o come utente con privilegi sudo:

sudo dnf install java-11-openjdk-devel

una Volta che l’installazione è completa, si può verificare controllando la versione Java:

java -version

L’output dovrebbe essere simile a questo:

openjdk version "11.0.4" 2019-07-16 LTSOpenJDK Runtime Environment 18.9 (build 11.0.4+11-LTS)OpenJDK 64-Bit Server VM 18.9 (build 11.0.4+11-LTS, mixed mode, sharing)

ecco!!! È stato installato correttamente Java sul sistema CentOS 8.

CentOS 8 supporta anche una versione senza testa di OpenJDK che fornisce un runtime Java minimo necessario per l’esecuzione di applicazioni senza un’interfaccia utente grafica (nessun supporto per tastiera, mouse e sistemi di visualizzazione). Questa versione è più adatta per le applicazioni server poiché ha meno dipendenze e utilizza meno risorse di sistema.

Per installare solo il tipo headless OpenJDK 11:

sudo dnf install java-11-openjdk-headless

Se hai già installatojava-11-openjdk-devel, il pacchetto headless verrà installato come dipendenza.

L’installazione di OpenJDK 8 #

Java 8, la versione precedente di Java LTS, è ancora supportata e ampiamente utilizzata. Se la vostra applicazione richiede Java 8, è possibile installarlo digitando il seguente comando:

sudo dnf install java-1.8.0-openjdk-devel

Verificare che l’installazione selezionando la versione di Java:

java -version

L’output dovrebbe essere simile a questo:

openjdk version "1.8.0_222"OpenJDK Runtime Environment (build 1.8.0_222-b10)OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

Per un minimo di Java runtime, installare il java-1.8.0-openjdk-headless pacchetto.

Impostazione della versione Java predefinita #

Se sono state installate più versioni Java sul sistema CentOS, è possibile utilizzare il sistema alternatives per impostare quale versione Java verrà utilizzata quando si digitajava nel terminale.

Per verificare quale versione Java è impostata come predefinita, digitare:

java -version

Se si desidera modificare la versione predefinita, utilizzare il comando alternatives:

sudo alternatives --config java

L’output sarà simile al seguente:

There are 2 programs which provide 'java'. Selection Command----------------------------------------------- 1 java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.4.11-0.el8_0.x86_64/bin/java)*+ 2 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre/bin/java)Enter to keep the current selection, or type selection number: 

Un elenco di tutte le versioni Java installate verrà stampato sullo schermo. Immettere il numero della versione che si desidera utilizzare come predefinito e premere Enter.

Potresti anche voler cambiare la versione predefinitajavac:

sudo alternatives --config java

javac è un’utilità di comando per la compilazione di programmi Java.

Impostazione della variabile d’ambiente JAVA_HOME #

La variabile d’ambienteJAVA_HOME viene utilizzata da alcune applicazioni Java per determinare il percorso di installazione Java e specificare quale versione Java deve essere utilizzata per eseguire l’applicazione.

Per impostare la variabile JAVA_HOME in base all’utente, aggiungerla al ~/.bashrc o a qualsiasi altro file di configurazione caricato quando l’utente effettua l’accesso. Per un’impostazione a livello di sistema, utilizzare uno script all’interno della directory /etc/profile.d.

Supponendo che si desidera impostare JAVA_HOME per OpenJDK 8 aggiungere la seguente riga alla fine del file:

/etc/profile.d/java.sh
JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk"

Per le modifiche abbiano effetto sulla shell corrente, è possibile fare il log-out e log-in o utilizzare il sourcecomando:

source /etc/profile.d/java.sh

Verificare che il JAVA_HOME variabile di ambiente è stata impostata correttamente:

echo $JAVA_HOME

L’uscita dovrebbe mostrare il percorso per l’installazione di Java:

/usr/lib/jvm/java-1.8.0-openjdk

È anche possibile impostareJAVA_HOME nella configurazione dell’applicazione, nel file di unità systemd o nella riga di comando all’avvio del programma.

Per esempio, per eseguire il Maven, utilizzando Java 8 digitare:

JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk mvn --version
...Java version: 1.8.0_222, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre...

Conclusione #

CentOS 8 supporta due principali versioni di Java, Java 8 e Java 11, che può essere installato utilizzando il dnf package manager.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.