As you may often work with multiple projects or modules that require different versions of Java, it's essential to switch Java versions seamlessly. This guide shows you how to use SDKMAN! to install, manage, and switch between multiple Java versions on macOS.
- π§© Easily install and manage Java and other JVM-based tools (e.g., Scala, Groovy).
- π οΈ Automatically manages environment variables like
$JAVA_HOME
and$PATH
. - π§ͺ Provides a CLI for listing, installing, switching, and removing SDKs.
-
Open your terminal and run:
curl -s "https://get.sdkman.io" | bash
-
Follow on-screen instructions.
-
Then activate it:
source "$HOME/.sdkman/bin/sdkman-init.sh"
-
Verify installation:
sdk version
List available Java versions:
sdk list java
Install Java 12:
sdk install java 12.0.1.j9-adpt
Install Java 8:
sdk install java 8.0.222.j9-adpt
Temporarily switch for current session:
sdk use java 8.0.222.j9-adpt
Set a global default:
sdk default java 12.0.1.j9-adpt
To use a specific Java version per module in IntelliJ:
- Go to File β Project Structure.
- Assign a different SDK per module or project.
SDKMAN installs Java under:
~/.sdkman/candidates/java/<version>
To make it more accessible:
ln -s ~/.sdkman ~/sdkman
Then you can access it at ~/sdkman/...
.
-
Uninstall a version:
sdk uninstall java 8.0.222.j9-adpt
-
View all commands:
sdk help
With SDKMAN, managing multiple Java versions becomes simple, clean, and developer-friendly. No more manually editing environment variables or hunting for JDK downloads β SDKMAN has your back.
π§ͺ Perfect for teams or developers working across different Java-based projects.