sdkman! 是用户级jdk管理工具,支持多版本安装、一键切换、自动配置环境变量,无需sudo且不修改系统配置;通过sdk list/java、sdk current/default等命令可清晰查看和管理所有jdk版本。

直接用 SDKMAN! 查看和管理 JDK 版本,比手动查 java -version 或翻环境变量强得多——它能一眼看清所有可用版本、已装哪些、当前用哪个、默认设的是谁,还能秒切、秒装、秒删。
为什么选 SDKMAN! 而不是手动管理
系统自带的 apt install openjdk-17-jdk 只能装一个版本,卸了再装费时又易冲突;自己下载 tar.gz 解压 + 手动改 JAVA_HOME 和 PATH 容易出错、难回溯。SDKMAN! 是用户级工具:不碰系统配置、不用 sudo、所有操作都在 ~/.sdkman 下完成,每个 JDK 版本独立存放,切换只是改个软链接,安全又干净。
快速安装(WSL / Ubuntu / macOS 通用)
确保已装 curl 和 unzip:
-
sudo apt update && sudo apt install curl unzip -y(Ubuntu/Debian) -
brew install curl unzip(macOS)
执行安装脚本:
curl -s "https://get.sdkman.io" | bashsource "$HOME/.sdkman/bin/sdkman-init.sh"- 把初始化命令追加进 shell 配置文件(推荐):
echo '[[ -s "$HOME/.sdkman/bin/sdkman-init.sh" ]] && source "$HOME/.sdkman/bin/sdkman-init.sh"' >> ~/.bashrc
或~/.zshrc(macOS Catalina 及以后默认 zsh) - 新开终端,运行
sdk version,输出版本号即成功
查看 JDK 版本的实用命令
-
sdk list java—— 查所有可安装版本(含 Temurin、Microsoft、Amazon Corretto、GraalVM 等) -
sdk list java | grep installed—— 只看已装好的版本(带installed标记) -
sdk current java—— 显示当前终端正在用的 JDK(临时生效) -
sdk default java—— 显示全局默认版本(新终端自动加载) -
sdk home java—— 查当前默认版本的安装路径(比如~/.sdkman/candidates/java/17.0.19-tem)
配合 IDE 使用(以 IntelliJ IDEA 为例)
在 Project Structure → SDKs 中添加新 JDK 时,路径填:
- WSL:
\wsl.localhostUbuntuhome用户名.sdkmancandidatesjava.0.19-tem - macOS/Linux:
/home/用户名/.sdkman/candidates/java/17.0.19-tem(或直接用sdk home java 17.0.19-tem输出的路径)
注意:.sdkman 是隐藏目录,IDE 文件选择器里需按 Ctrl+H(Linux/Windows)或 Cmd+Shift+.(macOS)显示隐藏项。











