Install/Manage Multiple JAVA versions — MacOS BigSur

Greetings geeks 👋 …

Normally we need to switch multiple java versions when we are switching/troubleshooting different projects right?

So, Today we are going to discuss on how to do this in a hassle-free way. 😎


We are using the jenv command-line tool for this.
We can install it by cloning the repo or using our most popular package manager Homebrew. Let’s move with homebrew.

If you don’t have homebrew, please run the below command to install as in

/bin/bash -c "$(curl -fsSL"

Then we can install the jenv as below,

brew install jenv

Next, we need to add the below to the shell configuration file as per the above output. In my case, it’s ~/.zshrc. If you are using bash, then it would be ~/.bash_profile or ~/.bashrc.

Then we need to restart the terminal or re-source your configurations as below.

source ~/.zshrc

To verify jenv was installed, run jenv doctor.
You’ll observe the following output (Since we just installed the jenv, it shows that the jenv is correctly loaded but java is not yet installed.):

Run the below command as well in order to make sure that the JAVA_HOME is set.
jenv enable-plugin export

Restart the terminal and echo the JAVA_HOME.

👏 Great Job! We have successfully installed the jenv.

Install Multiple Java Versions

Here is the interesting part where we going to install the JDKs.

1. Install the latest OpenJDK

Run the below command to install using homebrew.

brew install java

Above will install the latest(17.0.2) OpenJDK version as per the now.

2. Adding the JDK home to jenv

Then we need to notify jenv about the installed JDK in order to perform the switching.

jenv add <JDK_PATH>

You will see the above output if it is successfully added.

Let’s install another JDK version which is 11.

Then we can list all the added JDKs to the jenv using the below command.

jenv versions

Setting a Global Java Version

Use the below command to set the global java version,

jenv global <JAVA_VERSION>

Setting a Local Java Version for the current working directory

Use the below command to set the local java version,

jenv local <JAVA_VERSION>

Setting a shell instance Java Version

jenv shell <JAVA_VERSION>

That’s it and now you can switch between multiple java versions in a few keystrokes.

I hope that you find this article helpful…

Happy Coding!




Live to code | Senior Software Engineer @ WSO2

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Maximum Width of Binary Tree — LeetCode solve using BFS traversal method

Problem Illustration

Amplifying ClickHouse Capacity with Multi-Volume Storage (Part 2) — Altinity

Spring Boot Service

SQL And Pandas, Complimenting Tools For Data Manipulation

Is it Worth Becoming an iOS Developer in 2022?

3 Main Reasons Why Businesses Fail with Software Outsourcing

🏀Swyysh Fantasy League is live!

engine-setup failes at “Environment setup”

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Lakshan Thilakarathne

Lakshan Thilakarathne

Live to code | Senior Software Engineer @ WSO2

More from Medium

Exception Handling in Java

Exception Handling In Java


Exception Handling in Java()