一、简介
SDKMAN是管理多个SDK并行版本的工具,它提供了方便的命令行界面(CLI)和API,用于列出,安装,切换和删除候选对象。此外,它还为我们设置了环境变量。
它还允许开发人员安装基于JVM的SDK,例如Java,Groovy,Scala,Kotlin和Ceylon。还支持Maven,Gradle,SBT,Spring Boot,Vert.x等。SDKMAN是用Bash编写的免费,轻量级开源工具。
二、依赖
yum install -y curl zip unzip
三、下载
export SDKMAN_DIR="/usr/local/.sdkman" && curl -s "https://get.sdkman.io" | bash
四、安装
source "/usr/local/.sdkman/bin/sdkman-init.sh"
五、验证
sdk version
六、使用
列出所有SDK
sdk list
list命令显示所有可用的SDK,由唯一的名称,描述,官方网站,并在安装命令中标识:
=====================================================
Available Candidates
=====================================================
q-quit /-search down
j-down ?-search up
k-up h-help
-----------------------------------------------------
Java (11.0.7.hs-adpt) https://zulu.org
...
$ sdk install java
-----------------------------------------------------
Maven (3.6.3) https://maven.apache.org
...
$ sdk install maven
-----------------------------------------------------
Spring Boot (2.3.1.RELEASE) http://spring.io
...
$ sdk install springboot
------------------------------------------------------
...
此列表中的指定版本表示每个SDK的稳定版本或LTS版本。
列出Java版本
sdk list java
结果是按供应商分组并按版本排序的条目表:
=======================================================================
Available Java Versions for Linux 64bit
=======================================================================
Vendor | Use | Version | Dist | Status | Identifier
-----------------------------------------------------------------------
Corretto | | 17.0.2.8.1 | amzn | | 17.0.2.8.1-amzn
...
Microsoft | | 17.0.2 | ms | | 17.0.2-ms
...
Java.net | | 19.ea.8 | open | | 19.ea.8-open
...
安装指定版本
默认安装到~/.sdkman/candidates/java/目录下
sdk install java 17.0.2.8.1-amzn
或者安装到指定目录
sdk install java 17.0.2.8.1-amzn /usr/local/java/17.0.2.8.1-amzn
查看当前版本
sdk current
或者
java -version
切换不同版本
sdk use java 19.ea.8-open
设置默认版本
sdk default java 19.ea.8-open
卸载某个版本
sdk uninstall java 19.ea.8-open