How do I install Java on Mac OSX allowing version switching?

install java 11 mac
brew install openjdk 11
change java version mac
brew install java
multiple java versions mac
install openjdk 11 mac
jenv install java 11
java version manager

I want to install OpenJDK Java on Mac OSX and have it work alongside other JDK's since it is a newer release. Currently, I downloaded the tar.gz and placed it in my path but that is hard to maintain.

The only other install I found that do more things automatically is the install via Homebrew cask. It looks like only the current version too:

brew cask info java

Shows:

java: 13,33:5b8a42f3905b406298b72d750b6919f6 https://openjdk.java.net/

So I can install it from there, but then what? Am I stuck only with the new version?

Working with multiple Java versions in MacOS, Install with SDKMAN. This is a simple model in that it handles both installation and version switching, with a caveat that it installs the JDK into a  3. Version Switching. In this tutorial, we installed the Java 8 and Java 11 via Homebrew (Step 1), and Java 14 manually (Step 2), so this Mac has three versions now. And the Mac is using the JDK 14.

This is how I did it.

Step 1: Install Java 11

You can download Java 11 dmg for mac from here: https://www.oracle.com/technetwork/java/javase/downloads/jdk11-downloads-5066655.html

Step 2: After installation of Java 11. Confirm installation of all versions. Type the following command in your terminal.

/usr/libexec/java_home -V

Step 3: Edit .bash_profile

sudo nano ~/.bash_profile

Step 4: Add 11.0.1 as default. (Add below line to bash_profile file).

export JAVA_HOME=$(/usr/libexec/java_home -v 11.0.1)

to switch to any version

export JAVA_HOME=$(/usr/libexec/java_home -v X.X.X)

Now Press CTRL+X to exit the bash. Press 'Y' to save changes.

Step 5: Reload bash_profile

source ~/.bash_profile

Step 6: Confirm current version of Java

java -version

Switching Java Versions on MacOS [Snippets], note: These solutions work for various versions of Java including Java 8 and the new Java 13, and for any other previous Java version covered  Get Java for your Mac. Download Java for OS X directly from Oracle. If an app or webpage you want to use asks you to install Java software, you can download the current version of Java for OS X directly from Oracle's website.

Installation of the JDK and the JRE on macOS, In recent years Java has changed a lot of its features and has not just deprecated its elegance, simplicity, and speed to OS X applications and large binaries alike. The idea is to install multiple Java versions and we want to be able to switch from one to another easily. jEnv allows you to do that by setting a local scope. Switching Java Versions on MacOS [Snippets] Unsure of how to switch between multiple versions of Java on your Mac? Check out this quick tip to help you navigate those waters.

How do I install Java for my Mac?, The Java JDK installed on MacOS has some interesting platform to this SO user for this tip) uses the -v option to allow you to switch versions. Changes introduced with macOS 10.15 (Catalina) cause certain Java applications to behave incorrectly. Therefore, we cannot certify any JDK version on macOS 10.15 yet. However, as of now, you can install and run non-notarized software on macOS 10.15 systems by modifying your security preferences.

If you have multiple versions installed on your machine, add the following in bash profile:

export JAVA_HOME_7=$(/usr/libexec/java_home -v1.7)

export JAVA_HOME_8=$(/usr/libexec/java_home -v1.8)

export JAVA_HOME_9=$(/usr/libexec/java_home -v9)

And add the following aliases:

alias java7='export JAVA_HOME=$JAVA_HOME_7'

alias java8='export JAVA_HOME=$JAVA_HOME_8'

alias java9='export JAVA_HOME=$JAVA_HOME_9'

And can switch to required version by using the alias:

In terminal:

~ >> java7 export JAVA_HOME=$JAVA_7_HOME

How to install Java on Mac OS – Mkyong.com, Java Platform, Standard Edition Installation Guide Java OS X 2012-006 update​, then you are still using a version of Apple Java 6 Enter your password to allow this. You can change the default JRE by starting Java Preferences and then  The cleanest way to manage multiple java versions on Mac is to use Homebrew. And within Homebrew, use: homebrew-cask to install the versions of java; jenv to manage the installed versions of java

Managing multiple installations of Java on a Mac, Mac System Requirements for Oracle Java 7 and later versions If you are installing another version, make sure you change the version number Example​: For Java 8 Update 65 (8u65) the file to download is jre-8u65-macosx-x64.pkg. if Java content is disabled in web browsers, and provides instructions for enabling it. How do I install Java on Mac OSX allowing version switching? Hot Network Questions How did Shakespeare get away with staging witchcraft in his plays such as in Othello, Macbeth, or The Tempest?

Switch Between your macOS Zulu Installations, This article shows you how to install Java on Mac OSX, and also how to do Java/​JDK version switching. Tested with. Mac OS 10.15.3; JDK 8, 9,  Install Java on Mac. Download the jre-8u65-macosx-x64.pkg file. Review and agree to the terms of the license agreement before downloading the file. Double-click the .pkg file to launch it. Double-click on the package icon to launch install Wizard. The Install Wizard displays the Welcome to Java installation screen.

With the new release cadence of Java and vendor landscape, managing in use (and switch when your project does) jenv enable-plugin maven Using Homebrew on a Mac, it is easy to install multiple versions of Java and  Mac OS X 10.7.3 and above: Under System Preferences click on the Java icon to access the Java Control Panel which will list your Java version. If you do not see a Java icon under System Preferences, Java 7 or later versions is not installed.

Comments
  • Just asking, can we keep the question tags restricted to a single version? Since there is no such version-specific installation script/steps anyway. This is a general(non-version specific) question and can suffice to be tagged with only java-11, since I assume that is the place where people would start looking out for what the question and answer suggests.
  • Scripts in the answers do include specific versions even though it is easy to interpret them for other versions. But, it is also part of what community members search for, so it is good to help them find the correct answers quickly by helping to bring attention to updated and modern answers and differentiate from old outdated version 6 and version 8 topics. Having the latest stable version and latest new version I think are reasonable tags to keep.
  • For manual install I think you need to set JAVA_HOME in order to select a specific version, something like export JAVA_HOME=$(/usr/libexec/java_home -v <version>) in your .bash_profile
  • @PeterHull some of the Java version managers do not like having JAVA_HOME set manually and they manage it themselves. JEnv for sure will not adjust it if previously set, not sure about Jabba and SDKMAN but they normally will manage that setting. Only a manual install with NO version switching should ever set this value directly.
  • quite agree, it would be good if you could note that in your answer as the original question asked for version switching and setting JAVA_HOME is the (only?) way to do it for the manual install method.
  • Java in brew cask changed to OpenJDK 11 yesterday, Oct 3, 2018.
  • Possibly the most extensive and useful answer to running different JDKs on MacOS covering many different approaches, some I'd never come across before.
  • Nice solution. But what if still have java -version pointed to 8 while I have exported JAVA_HOME 11?
  • The question is asking about Open JDK, but you linked to the Oracle JDK instead. The Open JDK doesn't appear to have an installer or installation instructions.
  • In response to @AlexGera - add this line: export $PATH=$JAVA_HOME/bin:$PATH
  • and it should also be true now with AdoptOpenJDK builds
  • yep, this was covered in another answer here.
  • Error: caskroom/cask was moved. Tap homebrew/cask-cask instead, then fatal: repository 'https://github.com/Homebrew/homebrew-cask-cask/' not found