Ubuntu用SDKMAN轻松管理多个Java 版本

用最简单的方式安装和切换 AWS Corretto JDK 21/25

📦 一、安装 SDKMAN

复制代码
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"

验证安装:

sdk version


☕ 二、安装 AWS Corretto JDK

安装 JDK 21

复制代码
sdk install java 21.0.9-amzn

安装 JDK 25

复制代码
sdk install java 25.0.1-amzn

说明21.0.9-amzn 中的 amzn 代表 Amazon Corretto 发行版


🔄 三、切换 JDK 版本

临时切换(仅当前终端)

复制代码
sdk use java 21.0.9-amzn   # 切换到 JDK 21
sdk use java 25.0.1-amzn   # 切换到 JDK 25

设置全局默认版本

复制代码
sdk default java 21.0.9-amzn   # 默认使用 JDK 21
sdk default java 25.0.1-amzn   # 默认使用 JDK 25

✅ 四、验证

复制代码
java -version      # 查看当前 JDK 版本
sdk current java   # 查看 SDKMAN 当前版本

SDKMAN 会自动配置 JAVA_HOMEPATH,无需手动设置!


📋 五、常用命令速查

命令 作用
sdk list java 查看所有可用 JDK 版本
sdk install java <版本> 安装指定版本
sdk use java <版本> 临时切换版本
sdk default java <版本> 设置全局默认版本
sdk current java 查看当前使用的版本
sdk uninstall java <版本> 卸载指定版本

🎯 六、完整示例

复制代码
# 1. 安装 SDKMAN
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"

# 2. 安装两个版本的 AWS JDK
sdk install java 21.0.9-amzn
sdk install java 25.0.1-amzn

# 3. 切换测试
sdk use java 25.0.1-amzn
java -version    # 输出 JDK 25

sdk use java 21.0.9-amzn
java -version    # 输出 JDK 21

# 4. 设置默认版本
sdk default java 21.0.9-amzn

❓ 常见问题

Q: 如何知道 AWS JDK 的最新版本号?

复制代码
sdk list java | grep amzn

Q: 切换后 java -version 没变化?

复制代码
exec $SHELL -l   # 重新加载 shell

Q: 如何卸载某个版本?

复制代码
sdk uninstall java 21.0.9-amzn

搞定!现在你可以轻松在 JDK 21 和 25 之间自由切换了 🎉

相关推荐
阿昌喜欢吃黄桃1 小时前
RocketMq事务消息原理
java·中间件·消息队列·rocketmq·mq
CoderYanger1 小时前
A.每日一题:2095. 删除链表的中间节点
java·数据结构·程序人生·leetcode·链表·面试·职场和发展
摇滚侠1 小时前
MyBatis+Spring+SpringMVC SSM 整合 179-185
java·spring·mybatis
天疆说1 小时前
在 Ubuntu 24.04 上安装 MATLAB R2021b
数据库·ubuntu·matlab
我不是FD1 小时前
OpenAI vs Anthropic API 对比:流式返回 + Adapt 适配层完整方案
java·人工智能·python
Peter(阿斯拉)2 小时前
[Android]_[中级]_[如何创建MVVM架构原型]
android·java·架构·mvvm·viewmodel
地瓜伯伯2 小时前
从MESI缓存一致性协议讲透synchronized的底层
java·spring boot·spring·spring cloud·微服务·springcloud
Devin~Y2 小时前
大厂 Java 面试实录:从音视频内容社区到 AI RAG 的全链路技术设计
java·spring boot·redis·spring cloud·微服务·kafka·音视频
CoderYanger2 小时前
A.每日一题:3612. 用特殊操作处理字符串 I
java·程序人生·leetcode·面试·职场和发展·学习方法·改行学it