Installare e gestire diverse versioni di Java su Ubuntu

In questo articolo vedremo quanto sia facile installare, aggiornare e gestire diverse versioni di Java sul medesimo sistema Ubuntu. Le ragioni per farlo sono principalmente due: l’utilizzo di applicazioni incompatibili con le ultime versioni di Java e – per gli sviluppatori – la realizzazione di applicazioni destinate ad essere eseguite su una specifica versione di Java (e delle corrispondenti API del linguaggio).

OpenJDK e Oracle JDK

Oltre alle ragioni precedenti, ve n’è una terza per cui sia utile o addirittura necessario installare Java nei modi descritti in seguito: i repository ufficiali di Ubuntu contengono infatti un’implementazione open source dell’ambiente Java, denominata OpenJDK. Sebbene nella maggior parte dei casi sia perfettamente equivalente a quella ufficiale (in seguito Oracle JDK), in certi frangenti – principalmente per ragioni di compatibilità – ci si trova ad installare la versione ufficiale dell’ambiente Java distribuita da Oracle e scaricabile dal sito ufficiale.

In questo articolo mostreremo come installare facilmente Oracle JDK tramite un repository di terze parti, grazie al quale riceveremo automaticamente gli aggiornamenti Java rilasciati da Oracle, spesso contenenti importanti correzioni a bug di varia gravità.

OpenJDK e Oracle JDK possono essere installati ed utilizzati contemporaneamente sul medesimo sistema senza alcun conflitto (anche per la stessa versione di Java).

Installare Java 8

Gli aggiornamenti di Java 6 e 7 sono disponibili solo per utenti con account Oracle Support e non possono quindi essere installati nelle modalità descritte di seguito.

Prima di procedere con l’installazione è bene ricordare che l’ambiente Java è disponibile in due versioni:

  • JRE (Java Runtime Environment): necessario per eseguire applicazioni Java
  • JDK (Java Development Kit): necessario per sviluppare applicazioni Java (include il JRE)

Di seguito mostreremo come installare i JDK tramite un repository gestito dal blog online WebUpd8; mentre scrivo, il repository contiene i JDK relativi a Java 8 (ci sono anche le versioni in anteprima di Java 9, il cui rilascio è previsto il prossimo anno) per svariate versioni di Ubuntu, incluse tutte le LTS attualmente supportate. Da osservare che per ragioni di licenza il repository non contiene i pacchetti JDK di Oracle, bensì dei semplici script che provvedono a scaricarli direttamente dal sito ufficiale e ad installarli.

Per aggiungere il repository al sistema è sufficiente eseguire da terminale il seguente comando (richiede privilegi amministrativi):

sudo add-apt-repository ppa:webupd8team/java && sudo apt-get update
Pacchetti per Ubuntu 14.04 LTS | Oracle Java (JDK) 7 / 8 / 9 Installer PPA | “WebUpd8” team
Pacchetti Ubuntu 14.04 LTS | Oracle Java (JDK) 7 / 8 / 9 Installer PPA | “WebUpd8” team

Per installare il JDK desiderato è sufficiente eseguire da terminale uno o più tra i seguenti comandi, che installano rispettivamente OpenJDK 8 ed Oracle JDK 8:

sudo apt-get install openjdk-8-jdk # OpenJDK 1.8 (Java 8 - richiede Ubuntu 15.04 o successivi)
sudo apt-get install oracle-java8-installer # Oracle JDK 1.8 (Java 8)

Scegliere la versione Java predefinita

Una volta completata l’installazione possiamo scoprire facilmente il JDK utilizzato di default lanciando da terminale il seguente comando:

java -version

Di seguito è riportato l’output su Ubuntu 15.10 usando rispettivamente Oracle JDK e OpenJDK (entrambi alla versione 1.8, corrispondente a Java 8) come JDK predefinito:

Oracle JDK 1.8 è il JDK predefinito
Oracle JDK 1.8 è il JDK predefinito
OpenJDK 1.8 è il JDK predefinito
OpenJDK 1.8 è il JDK predefinito

Ora possiamo altrettanto facilmente vedere la lista completa dei JDK installati tramite il comando update-alternatives, che permette di gestire le alternative disponibili per un certo comando (nel nostro caso i vari JDK disponibili per il comando java) ed in particolare di scegliere quale tra queste usare di default:

update-alternatives --list java

L’output di esempio riportato di seguito mostra un sistema in cui sono stati installati sia OpenJDK 6 / 7 / 8 sia Oracle JDK 6 / 7 / 8.

Lista dei JDK disponibili
Lista dei JDK disponibili

Non ci resta che scegliere quale JDK utilizzare di default lanciando da terminale il seguente comando:

update-alternatives --config java
Impostare il JDK predefinito
Impostare il JDK predefinito

Viene mostrata una tabella la cui seconda colonna – Path – rappresenta i vari JDK installati. Una volta individuato il candidato desiderato, è sufficiente digitare il numero riportato in corrispondenza della prima colonna – Selection – e premere il tasto Invio; per mantenere invece la scelta corrente – identificabile dall’asterisco visibile all’inizio della riga – è sufficiente premere direttamente il tasto Invio.

Conferma di aggiornamento del JDK predefinito
Conferma di aggiornamento del JDK predefinito
Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...