See it in action

Why another version manager?
Other version managers may rely on shims or require WSL for Windows.
javm is different. It's a single standalone binary. Its small shell integration can be generated by javm init and audited before use. It avoids persistent shims: your shell changes environment variables only for use and deactivate, and the integration supports CMD, PowerShell, Bash, Zsh, Fish, and Nushell.
🚀 Zero dependencies
No JVM required to install the JVM. javm is a standalone binary that just works.
💻 Native cross-platform
Runs natively on Windows, Linux, and macOS across amd64 and arm64. No WSL or Git Bash required.
⚡ Session-scoped switching
Changes PATH and JAVA_HOME only for use and deactivate, with no persistent version shims.