最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Windows平台SDKMAN安装使用指南:JDK多版本管理详解
时间:2026-05-20 11:00:02 编辑:袖梨 来源:一聚教程网
前言
SDKMAN作为一款高效的命令行工具,能够帮助开发者轻松管理多个版本的软件开发套件。虽然它在Linux和macOS系统上配置简单,但在Windows环境中需要通过Git Bash等模拟环境来实现功能。本文将详细介绍如何通过Git Bash在Windows上安装和使用SDKMAN来管理JDK版本。

一、准备工作:配置 Git Bash 支持 zip 命令
由于SDKMAN安装过程需要使用zip命令,而Git for Windows默认仅提供unzip功能,因此需要手动添加zip支持。
1. GnuWin Files 下载地址
GnuWin Files网站提供了多种GNU工具的Windows版本,包括我们需要的zip工具。
- 站点地址: https://sourceforge.net/projects/gnuwin32/files/
在该站点中可以找到zip工具的二进制压缩包。
2. 使用便捷下载链接
为方便用户获取必要工具,我们准备了以下工具包下载链接:
- zip 工具包:点击下载 zip-3.0-bin.zip
- bzip2 工具包:点击下载 bzip2-1.0.5-bin.zip
3. 配置 Git Bash 支持 zip 命令
完成下载后,请按照以下步骤进行配置:
- 解压下载的两个zip文件。
- 将zip.exe和bzip2.dll文件复制到Git安装目录下的usrbin文件夹。
- 通常情况下,Git安装目录位于:C:Program FilesGitusrbin
注意:必须确保文件被正确复制到usrbin目录,这样才能在Git Bash中正常使用zip命令。
4. 验证配置是否成功
打开Git Bash窗口,执行以下命令进行验证:
zip --version
如果能够正常显示版本信息,说明配置成功,可以继续安装SDKMAN。
二、安装 SDKMAN
完成准备工作后,我们开始正式安装SDKMAN。
1. 设置 SDKMAN 目录环境变量并使其生效
首先需要设置SDKMAN的安装目录(注意不要手动创建该目录):
export SDKMAN_DIR="/d/JavaDev/sdkman"
建议将此命令添加到.bashrc或.bash_profile文件中实现永久配置。
echo 'export SDKMAN_DIR="/d/JavaDev/sdkman"' >> ~/.bashrc
添加后需要重新加载配置文件:
source ~/.bashrc
通过以下命令验证环境变量是否设置成功:
echo $SDKMAN_DIR
若输出/d/JavaDev/sdkman,则表示配置成功。
2. 安装 SDKMAN
执行以下命令进行自动安装:
curl -s "https://get.sdkman.io" | bash
安装完成后,按照提示执行初始化命令:
source "$SDKMAN_DIR/bin/sdkman-init.sh"
3. 验证安装是否成功
通过以下命令检查安装结果:
sdk version
若能显示SDKMAN版本号,说明安装成功。
三、使用 SDKMAN 管理 JDK
SDKMAN最强大的功能之一就是管理多个JDK版本。
1. 查看 JDK 版本列表
sdk list java
该命令会显示所有可用JDK版本,其中:
- Use列显示>>>表示当前使用的版本
- Status列显示installed表示已安装版本
- 无标记的表示可安装但尚未安装的版本
2. 安装指定版本 JDK
以安装OpenJDK 17为例:
sdk install java 17.0.8-tem
3. 查看当前已安装的 JDK
再次运行sdk list java命令,已安装版本会显示>标识。
4. 查看 JDK 安装路径
使用以下命令查看特定JDK版本的安装路径:
sdk home java 17.0.8-tem
该命令会输出对应JDK版本的实际安装目录。
5. 切换默认 JDK 版本
注意:请使用管理员权限运行Git Bash,否则无法正常创建symlink。
非管理员用户切换版本时会出现提示"cannot create current symlink, fall back to copy!"。
虽然不影响使用,但建议使用管理员权限操作以获得完整功能。
使用以下命令切换默认JDK版本:
sdk default java 17.0.8-tem
提示:输入sdk default java后按两次tab键可列出所有已安装版本。
6. 临时切换 JDK 版本
以下命令仅在当前会话中临时切换版本:
sdk use java 11.0.20-tem
7. 卸载 JDK
sdk uninstall java 11.0.20-tem
四、配置系统环境变量
通过SDKMAN安装的JDK默认只能在Git Bash中使用,如需在Windows原生环境中使用,需要配置系统环境变量。
1. 问题现象
在Windows CMD中执行java -version会提示"不是内部或外部命令"。
2. 解决方案:配置 JAVA_HOME 和 Path 环境变量
建议将系统环境变量指向SDKMAN的当前默认版本目录:
- 右键"此电脑" → "属性" → "高级系统设置"
- 点击"环境变量"
- 在"系统变量"中新建JAVA_HOME变量:
- 变量名:JAVA_HOME
- 变量值:D:JavaDevsdkmancandidatesjavacurrent
- 编辑系统变量中的Path变量
- 添加新条目:%JAVA_HOME%bin
- 保存所有更改
关键说明:
- current目录会自动指向当前默认版本
- 通过SDKMAN切换版本时,current目录会自动更新
- 这样配置可以保持版本切换功能在Windows环境中同步
3. 验证配置结果
重新打开CMD窗口,执行:
java -version
若能正常显示版本信息,说明配置成功。
4. 验证版本切换功能
在Git Bash中切换版本后,在CMD中验证是否同步:
# Git Bash中切换版本 sdk default java 11.0.20-tem # CMD中验证 java -version
注意:由于Windows环境变量缓存机制,可能需要重新打开CMD窗口才能看到变更。
五、结语
通过本教程,您已经掌握了在Windows系统中使用Git Bash安装配置SDKMAN的方法,以及如何利用它高效管理多个JDK版本。这套工具不仅适用于Java开发,还能管理Groovy、Scala等多种开发环境,极大提升开发效率。