Utilisation de plusieurs versions de Java avec Brew sur Mac + jEnv

Installation Homebrew

Introduction de homebrew-cask-versions

$ brew tap homebrew/cask-versions

Installation de Java 14

$ brew cask install java

Installation de Java 11

$ brew cask install java11

Installation de Java 8

--__ Non disponible en raison de la licence. AdoptOpenJDK, Corretto, [Zulu](https://jp.azul.com/downloads/ Remplacez par zulu /) etc. __

$ brew cask install java8

Installez AdoptOpenJDK 8

$ brew cask install adoptopenjdk8

Installation d'Amazon Corretto 8

$ brew cask install corretto8

Installation de Zulu 8

$ brew cask install zulu8

Vérifiez le JDK installé (JAVA_HOME)

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (3):
    12.0.1, x86_64:	"OpenJDK 12.0.1"	/Library/Java/JavaVirtualMachines/openjdk-12.0.1.jdk/Contents/Home
    11.0.2, x86_64:	"OpenJDK 11.0.2"	/Library/Java/JavaVirtualMachines/openjdk-11.0.2.jdk/Contents/Home
    1.8.0_212, x86_64:	"AdoptOpenJDK 8"	/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home

/Library/Java/JavaVirtualMachines/openjdk-12.0.1.jdk/Contents/Home
$ /usr/libexec/java_home --help
Usage: java_home [options...]
    Returns the path to a Java home directory from the current user's settings.

Options:
    [-v/--version   <version>]       Filter Java versions in the "JVMVersion" form 1.X(+ or *).
    [-a/--arch      <architecture>]  Filter JVMs matching architecture (i386, x86_64, etc).
    [-d/--datamodel <datamodel>]     Filter JVMs capable of -d32 or -d64
    [-t/--task      <task>]          Use the JVM list for a specific task (Applets, WebStart, BundledApp, JNI, or CommandLine)
    [-F/--failfast]                  Fail when filters return no JVMs, do not continue with default.
    [   --exec      <command> ...]   Execute the $JAVA_HOME/bin/<command> with the remaining arguments.
    [-R/--request]                   Request installation of a Java Runtime if not installed.
    [-X/--xml]                       Print full JVM list and additional data as XML plist.
    [-V/--verbose]                   Print full JVM list with architectures.
    [-h/--help]                      This usage information.

Changement de JDK

Java SE 14

$ export JAVA_HOME=`/usr/libexec/java_home -v "14"`
$ PATH=${JAVA_HOME}/bin:${PATH}

Java SE 11

$ export JAVA_HOME=`/usr/libexec/java_home -v "11"`
$ PATH=${JAVA_HOME}/bin:${PATH}

Java SE 8

$ export JAVA_HOME=`/usr/libexec/java_home -v "1.8"`
$ PATH=${JAVA_HOME}/bin:${PATH}

Utilisation de jEnv

Installez jEnv

--Installer avec Homebrew

$ brew install jenv

--Définir PATH

# Shell: bash
$ echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(jenv init -)"' >> ~/.bash_profile
# Shell: zsh
$ echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
$ echo 'eval "$(jenv init -)"' >> ~/.zshrc

--Créer un répertoire

$ cd ~
$ mkdir ~/.jenv/versions

Ajouter JDK à jEnv

--Installez le JDK avec Homebrew Cask.

Ajout de Java 8


$ jenv add `/usr/libexec/java_home -v "1.8"`

Liste des JDK ajoutés à jEnv

--JDK avec «*» au début est activé.

$ jenv versions
* system (set by /Users/[Nom d'utilisateur]/.jenv/version)
  1.8
  1.8.0.222
  openjdk64-1.8.0.222

Commutation Java

global

$ jenv global 1.8.0.222
$ jenv versions
  system
  1.8
* 1.8.0.222 (set by /Users/[Nom d'utilisateur]/.jenv/version)
  openjdk64-1.8.0.222
$ java -version
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_222-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.222-b10, mixed mode)

local

$ jenv local 11.0
$ jenv versions                                                                                           ✘ 
  system
  1.8
  1.8.0.222
* 11.0 (set by /Users/[Répertoire où jenv local a été exécuté]/.java-version)
  11.0.2
  openjdk64-1.8.0.222
  openjdk64-11.0.2
$ java -version
openjdk version "11.0.2" 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)
$ cat .java-version
11.0

Paramétrage automatique de la variable d'environnement JAVA_HOME

--Pour définir automatiquement JAVA_HOME, exécutez ʻenable-plugin export`.

$ jenv enable-plugin export

Recommended Posts

Utilisation de plusieurs versions de Java avec Brew sur Mac + jEnv
Basculer entre plusieurs versions de Java sur Mac
Utilisez jenv pour activer plusieurs versions de Java
Créez un environnement de développement Java à l'aide de jenv sur votre Mac
Installez java et maven sur un nouveau mac en utilisant brew
Gérer plusieurs versions de Ruby sur Mac [macOS + rbenv]
Utilisation de JupyterLab + Java avec WSL sous Windows 10
Comment changer de version de Java sur Mac
Gestion des versions de java avec jenv d'OSX
Installez java et android-sdk sur Mac en utilisant homebrew
Changez facilement de version de Java avec un alias sur macOS
Installez Java sur Mac
Utilisation de Java 8 avec Bluemix (sur Liberty Runtime & DevOps Service)
Créer un environnement de développement Java avec VS Code sur Mac
À partir d'avril 2018 Comment installer Java 8 sur Mac
[Java] Développement avec plusieurs fichiers en utilisant package et import
Gestion des versions Java avec jenv
Utilisation de Mapper avec Java (Spring)
Exemple d'utilisation de l'API Bulk de Salesforce à partir d'un client Java avec PK-chunking
Je veux juste écrire Java en utilisant Eclipse sur mon Mac
Comment changer de version Java avec direnv dans le terminal sur Mac
La version d'Elasticsearch que vous utilisez est-elle compatible avec Java 11?
OSX 10.15 (Catalina) Utilisation de Java avec β
Installé sur Lombok Mac (en utilisant STS)
Essayez d'utiliser Redis avec Java (jar)
Gestion des fuseaux horaires avec Java
Construire Java avec Mac vs Code
Utilisation de Java avec AWS Lambda-Eclipse Préparation
Développement HTML5 par Java avec TeaVM
Résumé de la programmation orientée objet utilisant Java
Utilisation du service proxy avec l'exploration Java
Installer l'environnement de développement Java sur Mac
J'ai essayé d'utiliser Google HttpClient de Java
Étapes pour exécuter le développement local d'ASP.NET Core sur Mac avec docker-compose
Comment vérifier Java installé sur Mac
Utilisation de Java avec des arguments CloudWatch AWS Lambda-Implementation-Check
Mémo de construction de l'environnement de développement Java sur Mac
Trier par plusieurs conditions à l'aide de Java Stream
Remarques sur les opérateurs utilisant Java ~ Type chaîne ~
Filtre Sobel utilisant OpenCV sur Android (Java)
Remarques sur l'utilisation de FCM avec Ruby on Rails
Créer un environnement de développement Java sur Mac
Installez Java8 avec Yum sur Amazon Linux
Développement de jeux avec deux personnes utilisant java 2
J'ai essayé d'utiliser OpenCV avec Java + Tomcat
Développement de jeux avec deux personnes utilisant java 1
Hello World sur Mac VSCode Java
Surveillance de l'état des applications Java à l'aide d'Elasticsearch
Retour sur les bases de Java
Utiliser SSIServlet avec Tomcat intégré SpringBoot 2.2.4
Mesure de la mémoire des applications Java sous Windows
Acquisition du contenu d'entrée à l'aide de Scanner (Java)
Construire OpenCV avec Java Wrapper sur Ubuntu 18.04
Gestion des versions Java avec cask + anyenv + jenv
Incertitude du pot commun pour plusieurs versions
Ouvrez plusieurs espaces de travail dans Eclipse sur Mac
Développement de jeux avec deux personnes utilisant java 3
Comment basculer entre plusieurs versions de Java
Exécutez Ubuntu + ROS avec Docker sur Mac
Essayez d'utiliser la télécommande Wii en Java