← All articles
Java · macOS

Installing Multiple Java Versions on macOS

Developers sometimes need multiple JDK versions on the same Mac because different applications, IDEs, or build environments depend on different Java releases.

This article documents the Homebrew Cask workflow that was used when the article was originally written.

Version context: The brew cask and caskroom/versions commands shown below are historical Homebrew syntax and should not be treated as current installation instructions. Homebrew's cask model and the available Java packages have changed significantly since 2017. For a current setup, use Homebrew's current Java casks or a JDK version manager and verify the package names for the versions you need.

Historical Workflow

Install the Latest Java Version

The original workflow used:

brew cask install java

Install Java 7

brew tap caskroom/versions
brew cask install java7

Install Java 8

brew tap caskroom/versions
brew cask install java8

Why Multiple JDKs Matter

Installing multiple versions is only part of the setup. Applications still need a reliable way to select the intended JDK. On macOS, /usr/libexec/java_home can identify installed runtimes and help set JAVA_HOME for a particular shell session or tool.

Takeaway

The exact Homebrew commands in this article are historical, but the underlying requirement remains common: keep multiple JDKs available when legacy and newer applications require different Java runtimes, and select the desired runtime explicitly rather than relying on whichever version happens to be first on the system path.

CONTINUE READING

Explore closely related architecture, integration and implementation topics.