SDKMAN是Java开发中管理多版本JDK的高效工具,支持多种发行版。通过简单命令可实现安装、切换与默认版本设置,结合.sdkrc文件和自动环境启用,实现项目级JDK自动匹配,大幅提升开发效率。
在Java开发中,经常需要在不同项目间切换JDK版本。比如一个项目用Java 11,另一个使用Java 17或21。手动切换环境变量不仅麻烦还容易出错。这时,SDKMAN(Software Development Kit Mana
ger)就成为了一个非常实用的工具。它是一个轻量级命令行工具,专为管理多个软件开发工具包版本而设计,尤其适合管理多版本JDK。
SDKMAN基于Unix/Linux/Mac系统(Windows需通过WSL),安装非常简单:
如果输出版本号,说明SDKMAN已准备就绪。
SDKMAN支持多种JDK发行版,如Oracle、OpenJDK、Amazon Corretto、Azul Zulu等。常用操作如下:
安装完成后,SDKMAN会自动设置默认版本(通常是最新安装的),也可以手动切换。
在不同项目中切换JDK时,无需修改系统环境变量,只需一条命令:
这些命令让版本切换变得极其高效,特别适合频繁切换项目的开发者。
实际开发中可以结合一些技巧提升效率:
保存后,进入该目录时自动切换到指定JDK(需启用sdkman_auto_env=true)。
这些技巧能显著减少环境配置时间,提高开发流畅度。
基本上就这些。SDKMAN把复杂的JDK版本管理变得像Node.js中的nvm一样简单。只要熟悉几个核心命令,就能轻松应对多版本并存的开发场景。不复杂但容易忽略的是自动切换功能,配合 .sdkrc 使用,真正实现“进目录即正确环境”。