However, Apple’s transition from its own proprietary Java implementation to a fully Oracle/OpenJDK-based model has created confusion. This article cuts through the noise, explaining what the JRE is, how macOS handles it, and the best practices for installation and management. The Java Runtime Environment is the software layer that allows your Mac to execute Java bytecode. It is not for developers (who need the JDK, or Java Development Kit) but for end-users who simply need to run programs.
For decades, Java has maintained a "write once, run anywhere" philosophy. On macOS, this promise is fulfilled by the Java Runtime Environment (JRE). Whether you're running a complex enterprise application, playing a Minecraft server, or using academic software, understanding the JRE on your Mac is essential. java runtime for mac
# Install Java 21 (LTS) brew install openjdk@21 sudo ln -sfn $(brew --prefix)/opt/openjdk@21/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-21.jdk Managing Multiple Java Runtimes (Crucial!) Because different apps need different Java versions, you need a way to switch between them. However, Apple’s transition from its own proprietary Java
# List all installed JREs/JDKs /usr/libexec/java_home -V export JAVA_HOME= /usr/libexec/java_home -v 1.8 java -version It is not for developers (who need the
Install JEnv to automatically switch versions per directory.
Install JEnv or SDKMAN before you install your first JRE. Your future self will thank you when you inevitably need to switch between Java 8 for that old accounting app and Java 21 for the latest game launcher. Last updated: 2026. macOS versions covered: Sonoma (14), Sequoia (15).