GNU/Linux >> Linux Esercitazione >  >> Linux

Come installare/passare tra più versioni Java con SDKMAN

SDKMAN! è uno strumento per la gestione di più versioni di kit di sviluppo software su macOS, Linux, WLS, Cygwin, Solaris e FreeBSD. Può installare e gestire Java, Groovy, Scala, Kotlin, Ceylon, Ant, Gradle e molti altri.

Lo strumento è stato ispirato da RVM e rbenv e necessita solo di curl e zip/unzip sul tuo sistema per funzionare come è scritto in bash (non preoccuparti, funziona anche con zsh).

Questo articolo mostra come installare Java usando SDKMAN! (con il programma di installazione o offline con i propri binari Java) e come gestire e utilizzare più versioni di Java (semplicemente impostando una versione Java come predefinita, inclusa l'impostazione della variabile d'ambiente JAVA_HOME o cambiando temporaneamente le versioni Java per la sessione del terminale corrente), o solo per una directory specifica).

1. Per iniziare Installa SDKMAN! Interfaccia a riga di comando.

2. Elenca tutte le possibili versioni di Java.

Questo è SDKMAN! installato, lo useremo. Utilizzare questo comando per elencare tutte le versioni Java idonee:

sdk list java

Questo elenca AdoptOpenJDK e le versioni che puoi installare Amazon Java, Azul Zulu OpenJDK, Java.net, ecc.

Questo è un estratto (l'output è abbastanza grande) di ciò che vedresti se utilizzassi il comando list java:

$ sdk list java
..............................................................
Available Java Versions
==============================================================
 Vendor     |Use| Version   | Dist| Status   | Identifier
--------------------------------------------------------------
 AdoptOpenJDK|  | 14.0.2.j9 | adpt| installed| 14.0.2.j9-adpt
             |  | 14.0.2.hs | adpt|          | 14.0.2.hs-adpt
             |  | 13.0.2.j9 | adpt|          | 13.0.2.j9-adpt
             |  | 13.0.2.hs | adpt|          | 13.0.2.hs-adpt
             |  | 12.0.2.j9 | adpt|          | 12.0.2.j9-adpt
             |  | 11.0.8.hs | adpt| installed| 11.0.8.hs-adpt
             |  | 8.0.262.j9| adpt|          | 8.0.262.j9-adpt
..............................................................
 Azul Zulu   |  | 14.0.2    | zulu|          | 14.0.2-zulu
             |  | 13.0.4    | zulu|          | 13.0.4-zulu
             |  | 13.0.3.fx | zulu|          | 13.0.3.fx-zulu
             |  | 12.0.2    | zulu|          | 12.0.2-zulu
             |  | 11.0.8    | zulu|          | 11.0.8-zulu
..............................................................
 Java.net    |  | 16.ea.6   | open|          | 16.ea.6-open
             |  | 15.ea.32  | open|          | 15.ea.32-open
             |  | 14.0.2    | open|          | 14.0.2-open
             |  | 13.0.2    | open|          | 13.0.2-open
             |  | 12.0.2    | open|          | 12.0.2-open
             |  | 11.0.7    | open|          | 11.0.7-open
             |  | 10.0.2    | open|          | 10.0.2-open
             |  | 9.0.4     | open|          | 9.0.4-open
             |  | 8.0.252   | open|          | 8.0.252-open
.............................................................

Presta attenzione a quel Identifier Pilastro. Questo è il nome del pacchetto che devi usare per installare una versione di Java.

3. Installa una versione Java con SDKMAN!.

Il comando che puoi utilizzare per installare una versione di Java è:

sdk install java IDENTIFIER


Sostituisci IDENTIFIER con l'identificatore della versione Java, come in sdk list java Uscita comando.

Ad esempio, per installare AdoptOpenJDK versione 11.0.8.hs, il comando di installazione è:

sdk install java 11.0.8.hs-adpt

SDKMAN! può anche installare una versione locale di java come segue:

sdk install java [UNIQUE-IDENTIFIER] /path/to/Java

Ad esempio, scarica l'ultimo Oracle Java 14 .tar.gz (se non stai utilizzando il nostro programma di installazione Oracle Java), estrailo, quindi usa SDKMAN! per installarlo con:

sdk install java 14.0.2-oracle ~/Downloads/jdk-14.0.2

4. Passa da una versione Java all'altra.

Ci sono 3 modi per usare le versioni Java con SDKMAN! gestire:

  • Imposta una versione Java come predefinita
  • Utilizzare una versione di Java solo per la sessione del terminale corrente
  • attiva una versione Java specifica quando accedi a una directory


A. Imposta una versione Java come predefinita.

Per specificare una delle versioni Java installate con SDKMAN! (indipendentemente dal fatto che sia stato installato con il programma di installazione integrato o da una directory locale) come versione Java standard, utilizzare:

sdk default java IDENTIFIER

Sostituisci IDENTIFIER con l'identificatore della versione Java, come in sdk list java Uscita comando.

Ad esempio, per rendere AdoptOpenJDK versione 11.0.8.hs la versione Java predefinita del sistema, utilizzare:

sdk default java 11.0.8.hs-adpt

Questo imposta anche la variabile d'ambiente JAVA_HOME ~/.sdkman/candidates/java/current .

B. Utilizzare una versione Java solo per la sessione del terminale corrente:

sdk use java IDENTIFIER

Sostituisci IDENTIFIER con l'ID della versione Java, come in sdk list java Uscita comando.

Ad esempio, imposta Java 14.0.2-oracle installato localmente come versione Java per la sessione del terminale corrente:

sdk use java 14.0.2-oracle

C. Attiva una versione Java specifica quando accedi a una directory.

Fallo nella directory per cui desideri utilizzare una versione personalizzata di Java per:

sdk env init

Un file chiamato .sdkmanrc è stato ora generato in questa directory. Aprilo e cambia il valore di java= l'ID della versione Java che si desidera utilizzare, ad es. B. 11.0.8.hs-adpt per AdottaOpenJDK 11.0.8.

Ora esegui sdk env in questa directory per attivare la versione Java che hai nel .sdkmanrc Archivia o modifica l'SDKMAN! File di configurazione (~/.sdkman/etc/config ) e regola sdkman_auto_env=true in modo che le versioni dell'SDK vengano cambiate automaticamente quando cd in una directory.

Indipendentemente da come ottieni una versione Java tramite SDKMAN! puoi controllare quale versione di Java è attualmente in uso (come determinato da SDKMAN) con:

sdk current java

Puoi anche richiedere direttamente la versione corrente di Java:

java -version

javac -version


Linux
  1. Come installare Java su Linux

  2. Come gestire più versioni di Python con Pyenv su Linux

  3. Come installare e gestire le versioni Java su Rocky Linux 8

  4. Come eseguire più versioni di PHP con Nginx su Ubuntu?

  5. Come installare Java su Ubuntu 22.04

Come installare più versioni di PHP su Ubuntu 20.04, 18.04, 20.10

Come passare tra più versioni Java su Debian

Come installare Java con Apt su Ubuntu 20.04

Come installare Java su Ubuntu 18.04

Come installare Java su CentOS 8

Come installare Java su Ubuntu 18.04?