JDK多版本管理工具-SDKMAN

家人们,最近我一直在寻找一个Jdk多版本管理方案,今天它来了👇👇!SDKMAN:一款支持Linux、Windows、MacOS的跨平台管理工具,它不仅支持Java版本管理,同时还支持Maven、Gradle等其他管理工具的版本管理。

1.1 安装SDKMAN

  • 在Linux Terminal中执行以下命令:

curl -s "https://get.sdkman.io" | bash

▼ 图一

img

  • 新开Linux Terminal窗口或者在当前窗口执行命令:

source "$HOME/.sdkman/bin/sdkman-init.sh"
  • 检测是否安装成功:

sdk version

▼ 图二

img

  • 卸载SDKMAN命令:

sudo rm -rf ~/.sdkman

1.2 常用命令

  • help:

查看命令帮助文档,命令语法:

sdk help [subcommand]

subcommand为可选参数,如果省略则查看sdk的帮助文档,如果指定则查看指定子命令的帮助文档。

  • install:

安装软件,命令语法:

sdk install <candidate> [version] [path]

candidate:需要安装的软件的名称;

version:要安装软件的版本号,可选参数;

path:要安装软件的路径,一般用于将本地已安装的软件导入到sdkman中时使用,可选参数;

示例代码:

sdk install java 1.8 $JAVA_HOME
sdk install java 21 $JDK21

▼ 图三

img

  • list:

查看可用的软件版本,包括已经安装的,命令语法:

sdk list [candidate]

示例代码:

sdk list java

▼ 图四

img

img

图四只是展示了本地安装版本,如果要实现当前功能,可以先运行离线模式,命令为:sdk offline enable | disable

* *

命令一般用于安装前获取支持的软件命令和版本,或者查看已安装的软件及版本*。 *

img

  • use:

设置当前shell的使用的软件版本号,命令语法:

sdk use <candidate> <version>

示例代码:

sdk use java 1.8
sdk use java 21

▼ 图五

img

img

小结

通过图五我们可以到通过命令:sdk use java 设置版本后,当使用相关的java命令时其版本号已改变,我们也可以使用命令:sdk current java来检测当前所使用的软件版本号,这里的java可以替换成你通过sdkman安装的任意软件名称

  • default:

设置全局默认的软件版本号,命令语法:

sdk default <candidate> [version]
  • uninstall:

卸载指定版本的软件,命令语法:

sdk uninstall <candidate> <version>
0 子项 · 2 次浏览 · 2026-09-16