SDKMAN! 安装与使用指南
SDKMAN! 是一个用于管理多个 SDK 版本的工具,支持 Java、Maven、Kotlin、Scala、Groovy 等多种 JVM 语言和工具。
一、安装 SDKMAN!
1. 系统要求
- Unix 系统(macOS、Linux)或 Windows(需要 WSL/Git Bash/Cygwin)
- 已安装
curl和zip/unzip
2. 安装命令
curl -s "https://get.sdkman.io" | bash
如果装一半中断可以先删除再重新装 $ rm -rf ~/.sdkman 。
3. 初始化
安装完成后,打开新终端或执行:
source "$HOME/.sdkman/bin/sdkman-init.sh"
4. 验证安装
sdk version
二、Java 安装与管理
1. 查看可用 JDK 版本
sdk list java
2. 安装 JDK
# 安装最新稳定版
sdk install java
# 安装指定版本(版本号从 list 中获取)
sdk install java 21.0.2-tem
# 安装指定发行商的版本
sdk install java 17.0.10-zulu
3. 切换 JDK 版本
# 临时切换(仅当前终端生效)
sdk use java 21.0.2-tem
# 永久切换(设为默认版本)
sdk default java 21.0.2-tem
4. 查看当前使用的版本
sdk current java
5. 查看已安装的版本
sdk list java | grep installed
6. 卸载 JDK
sdk uninstall java 21.0.2-tem
7. 查看 JAVA_HOME
echo $JAVA_HOME
# 或
sdk home java current
8. 常用 JDK 发行版
| 标识 | 发行商 | 说明 |
|---|---|---|
tem | Eclipse Temurin | 社区版,推荐使用 |
zulu | Azul Zulu | 免费商业支持 |
amzn | Amazon Corretto | AWS 优化 |
graal | GraalVM | 高性能,支持原生编译 |
oracle | Oracle | 官方版本 |
ms | Microsoft | 微软构建版本 |
三、Maven 安装与管理
1. 查看可用 Maven 版本
sdk list maven
2. 安装 Maven
# 安装最新稳定版
sdk install maven
# 安装指定版本
sdk install maven 3.9.6
3. 切换 Maven 版本
# 临时切换(仅当前终端生效)
sdk use maven 3.9.6
# 永久切换(设为默认版本)
sdk default maven 3.9.6
4. 查看当前使用的版本
sdk current maven
5. 查看已安装的版本
sdk list maven | grep installed
6. 卸载 Maven
sdk uninstall maven 3.9.6
7. 查看 Maven 安装路径
sdk home maven current
8. 验证 Maven 安装
mvn -v
四、命令速查对比
| 操作 | Java 命令 | Maven 命令 |
|---|---|---|
| 查看可用版本 | sdk list java | sdk list maven |
| 安装最新版 | sdk install java | sdk install maven |
| 安装指定版本 | sdk install java 21.0.2-tem | sdk install maven 3.9.6 |
| 临时切换版本 | sdk use java <version> | sdk use maven <version> |
| 设为默认版本 | sdk default java <version> | sdk default maven <version> |
| 查看当前版本 | sdk current java | sdk current maven |
| 卸载版本 | sdk uninstall java <version> | sdk uninstall maven <version> |
| 查看安装路径 | sdk home java <version> | sdk home maven <version> |
五、项目级版本管理
在项目根目录创建 .sdkmanrc 文件,可同时管理 Java 和 Maven 版本:
# 进入项目目录
cd your-project
# 设置当前版本到配置文件
sdk env init
.sdkmanrc 文件内容示例:
java=21.0.2-tem
maven=3.9.6
切换到项目目录时自动使用配置的版本:
sdk env
开启自动切换(在 ~/.sdkman/etc/config 中设置):
sdkman_auto_env=true
六、卸载 SDKMAN!
rm -rf ~/.sdkman
然后从 ~/.bashrc 或 ~/.zshrc 中删除 SDKMAN! 初始化代码。
七、常见问题
Q: 安装后命令找不到?
重新加载配置:
source ~/.zshrc # 或 source ~/.bashrc
Q: 网络问题导致安装失败?
可以设置代理或使用镜像源,编辑 ~/.sdkman/etc/config。
Q: 如何查看所有已安装的 SDK?
sdk current