SDKMAN ! est un outil permettant de gérer plusieurs versions de kits de développement logiciel sur macOS, Linux, WLS, Cygwin, Solaris et FreeBSD. Il peut installer et gérer Java, Groovy, Scala, Kotlin, Ceylon, Ant, Gradle et bien d'autres.
L'outil a été inspiré par RVM et rbenv et n'a besoin que de boucler et de compresser / décompresser sur votre système pour fonctionner tel qu'il est écrit en bash (ne vous inquiétez pas, cela fonctionne aussi avec zsh).
Cet article explique comment installer Java à l'aide de SDKMAN ! (avec le programme d'installation ou hors ligne avec vos propres binaires Java) et comment gérer et utiliser plusieurs versions de Java (en définissant simplement une version de Java par défaut, y compris en définissant la variable d'environnement JAVA_HOME ou en changeant temporairement les versions de Java pour la session de terminal en cours), ou uniquement pour un répertoire spécifique).
1. Pour commencer Installez le SDKMAN! Interface de ligne de commande.
2. Répertorier toutes les versions Java possibles.
C'est maintenant SDKMAN ! installé, nous l'utiliserons. Utilisez cette commande pour répertorier toutes les versions Java éligibles :
sdk list java
Cela répertorie AdoptOpenJDK et les versions que vous pouvez installer Amazon Java, Azul Zulu OpenJDK, Java.net, etc.
Voici un extrait (la sortie est assez volumineuse) de ce que vous verriez si vous utilisiez la commande 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
.............................................................
Faites attention à ce Identifier
Pilier. Il s'agit du nom du package que vous devez utiliser pour installer une version de Java.
3. Installez une version Java avec SDKMAN !.
La commande que vous pouvez utiliser pour installer une version de Java est :
sdk install java IDENTIFIER
Remplacer IDENTIFIER
avec l'identifiant de la version Java, comme dans le sdk list java
Sortie de commande.
Par exemple, pour installer AdoptOpenJDK version 11.0.8.hs, la commande d'installation est :
sdk install java 11.0.8.hs-adpt
SDKMAN ! pouvez également installer une version locale de java comme suit :
sdk install java [UNIQUE-IDENTIFIER] /path/to/Java
Par exemple, téléchargez le dernier Oracle Java 14 .tar.gz (si vous n'utilisez pas notre programme d'installation Oracle Java), extrayez-le, puis utilisez SDKMAN ! pour l'installer avec :
sdk install java 14.0.2-oracle ~/Downloads/jdk-14.0.2
4. Basculer entre les versions Java.
Il existe 3 façons d'utiliser les versions Java avec SDKMAN ! gérer :
- Définir une version Java par défaut
- Utiliser une version de Java uniquement pour la session de terminal en cours
- activer une version Java spécifique lorsque vous entrez dans un répertoire
A. Faites d'une version Java la version par défaut.
Pour spécifier l'une des versions de Java installées avec SDKMAN ! (qu'il ait été installé avec le programme d'installation intégré ou à partir d'un répertoire local) comme version standard de Java, utilisez :
sdk default java IDENTIFIER
Remplacez IDENTIFIER
avec l'identifiant de la version Java, comme dans le sdk list java
Sortie de commande.
Par exemple, pour faire d'AdoptOpenJDK version 11.0.8.hs la version Java par défaut du système, utilisez :
sdk default java 11.0.8.hs-adpt
Cela configure également la variable d'environnement JAVA_HOME ~/.sdkman/candidates/java/current
.
B. Utilisez une version Java uniquement pour la session de terminal en cours :
sdk use java IDENTIFIER
Remplacez IDENTIFIER
avec l'ID de version Java, comme dans le sdk list java
Sortie de commande.
Par exemple, définissez l'oracle Java 14.0.2 installé localement comme version Java pour la session de terminal en cours :
sdk use java 14.0.2-oracle
C. Activez une version Java spécifique lors de la saisie d'un répertoire.
Faites-le dans le répertoire pour lequel vous souhaitez utiliser une version personnalisée de Java :
sdk env init
Un fichier nommé .sdkmanrc
a maintenant été généré dans ce répertoire. Ouvrez-le et modifiez la valeur de java=
l'ID de version Java que vous souhaitez utiliser, par ex. B. 11.0.8.hs-adpt
pour AdoptOpenJDK 11.0.8.
Maintenant, exécutez soit sdk env
dans ce répertoire pour activer la version Java que vous avez dans le .sdkmanrc
Fichier, ou éditez le SDKMAN ! Fichier de configuration (~/.sdkman/etc/config
) et ajustez sdkman_auto_env=true
afin que les versions du SDK soient automatiquement commutées lorsque vous cd
dans un répertoire.
Peu importe comment vous obtenez une version Java via SDKMAN ! vous pouvez vérifier quelle version de Java est actuellement utilisée (telle que déterminée par SDKMAN) avec :
sdk current java
Vous pouvez également vous renseigner directement sur la version actuelle de Java :
java -version
javac -version