Home  >  Article  >  Java  >  Installing (multiple) Java on MacOS managed by jEnv

Installing (multiple) Java on MacOS managed by jEnv

Patricia Arquette
Patricia ArquetteOriginal
2024-10-07 16:07:29910browse

Installing (multiple) Java on MacOS managed by jEnv

Install some Java!

I'm gonna install three version's from openjdk using Homebrew! We should all know what Homebrew is by now...
$ brew install openjdk@17
$ brew install openjdk@21

Create some Symlinks

As far as I understand it MacOS has a special Java VM folder where it installs the JVMs. We'll create symlinks to versions we just installed from Homebrew.
sudo ln -sfn /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk
sudo ln -sfn /opt/homebrew/opt/openjdk@21/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-21.jdk

Install jEnv

jenv is a Java installation version manager. Install with Homebrew as well:
$ brew install jenv

Add the following to your shell's .rc file so jenv is executed upon terminal startup


# Setup JEnv to install run
export PATH="$HOME/.jenv/bin:$PATH"
eval "$(jenv init -)"
# Have JAVA_HOME set by JEnv for us...
jenv enable-plugin export


Source the file to apply the changes
source ~/.zshrc # or ~/.bash_profile, ~/.bashrc, etc.

Add the JVMs to jenv

Add the versions in Java VM folder to jenv so it can manage them
jenv add /Library/Java/JavaVirtualMachines/openjdk-17.jdk/Contents/Home/
jenv add /Library/Java/JavaVirtualMachines/openjdk-21.jdk/Contents/Home/

See the versions installed by jenv

You can see the installed versions by echo ${JAVA_HOME}


$ jenv versions
* system (set by /Users/user/.jenv/version)
  17
  17.0
  17.0.12
  21
  21.0
  21.0.4
  openjdk64-17.0.12
  openjdk64-21.0.4


See which version of Java you're using:


$ java -version
openjdk version "17.0.12" 2024-07-16
OpenJDK Runtime Environment Homebrew (build 17.0.12+0)
OpenJDK 64-Bit Server VM Homebrew (build 17.0.12+0, mixed mode, sharing)


Set/unset global version of Java


$ jenv global 21.0.2
$ jenv global --unset


Set/unset local version of Java

This will add a .java-version file in the directory you're currently in so you can commit it as a part of your Java project.


$ jenv local 21.0.2
$ jenv local --unset


Congrats! You've just installed Java on your MacOS! Have fun on your Java/Kotlin projects! ?

The above is the detailed content of Installing (multiple) Java on MacOS managed by jEnv. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn