Mac 安装及使用sdkman指南

什么是SDKMA?

SDKMAN(Software Development Kit Manager)是一款专为JVM生态设计的全功能SDK管理工具,通过命令行界面为开发者提供极简的SDK版本管理方案。作为Java开发者工具链中的核心组件,它能高效管理Java、Scala、Kotlin等JVM语言环境及Maven、Gradle等构建工具的版本控制

特点

🔧 统一管理:集中管控50+个JVM相关SDK(涵盖JDK/Gradle/Scala/Spring Boot等)

⚡ 智能安装:自动化完成下载、安装、环境变量配置全流程

🔄 版本热切换:支持多版本并行与即时环境切换(如JDK8←→17秒级切换)

📱 全平台兼容:原生支持Linux/macOS,通过WSL完美适配Windows

💻 极简CLI:直观命令设计(sdk install/use/list),降低工具学习曲线

安装 SDKMAN!

在终端中执行以下命令来安装 SDKMAN!: 安装完成后,按照提示重启终端或者执行以下命令使配置生效:

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

卸载 SDKMAN!

若要卸载 SDKMAN!,可以执行以下命令:

复制代码
rm -rf "$HOME/.sdkman"

然后手动从你的 shell 配置文件(如 .bashrc.zshrc)中移除 SDKMAN! 的初始化脚本引用。

基本使用命令

列出可用的 SDK

使用 sdk list 命令可以列出 SDKMAN! 支持的所有 SDK:

复制代码
sdk list

若要查看特定 SDK 的可用版本,可在 list 后面加上 SDK 名称,例如查看 Java 的可用版本:

复制代码
sdk list java

安装 SDK

使用 sdk install 命令来安装指定的 SDK 版本,例如安装 Java 11:

复制代码
sdk install java 11.0.23-amzn

这里的 11.0.12-open 是 Java 的一个具体版本标识,你可以根据 sdk list java 列出的版本信息选择合适的版本进行安装。

卸载 SDK

使用 sdk uninstall 命令来卸载已安装的 SDK 版本,例如卸载之前安装的 Java 11:

复制代码
sdk uninstall java 11.0.23-amzn

使用特定版本的 SDK

使用 sdk use 命令可以临时切换到指定版本的 SDK,例如临时使用 Java 17:

复制代码
sdk use java 17.0.14-amzn

若要永久设置某个版本为默认版本,使用 sdk default 命令,例如将 Java 17 设置为默认版本:

复制代码
sdk default java 17.0.14-amzn

查看当前使用的 SDK 版本

使用 sdk current 命令可以查看当前正在使用的 SDK 版本,例如查看当前使用的 Java 版本:

复制代码
sdk current java

更新 SDKMAN!

使用 sdk selfupdate 命令可以更新 SDKMAN! 自身到最新版本:

复制代码
sdk selfupdate

检查 SDK 更新

使用 sdk update 命令可以检查已安装的 SDK 是否有可用的更新:

复制代码
sdk update

帮助命令

使用 sdk help 命令可以查看 SDKMAN! 的帮助信息,了解所有可用的命令及其用法:

复制代码
sdk help
相关推荐
mqiqe1 小时前
AgentScope Java Harness:4. 双层记忆系统 让 Agent 拥有真正的“长期大脑“
java·开发语言
伍一511 小时前
03-文件管理模块-一个看似简单的模块藏着多少细节
java·ruoyi·若依
gugucoding1 小时前
46. 【Java】JUC并发工具:让并发更简单
java·开发语言
Nebula_g2 小时前
JavaSE基础语法:面向对象高级(代码中的成分)
java·开发语言·编程·javase·技术栈·高级语法
AC赳赳老秦2 小时前
公开图片 OCR 数据提取:OpenClaw 合规采集公开信息图,识别文字与表格并转化为结构化数据
java·大数据·前端·数据库·python·php·openclaw
PC2005-cloud2 小时前
DeepSeek Harness 创建 skill 指南:结构、安装、使用
笔记·学习
小强库计算机毕业设计4 小时前
SpringBoot+Vue3 学生宿舍管理系统实战
java·spring boot·后端·vue·学生宿舍管理系统
李冰然4 小时前
深入Java集合框架:HashMap源码解析(JDK 8)
java
库玛西4 小时前
现代 C++ 智能指针全景指南:从 RAII 思想到工业级实践
c语言·开发语言·c++·笔记·面试
人道领域5 小时前
【0-1的agent进阶篇】RAG:从Embedding到检索增强生成的底层逻辑
java·embedding·agent·rag