SDK 多版本管理控制利器 SDKMAN 介绍及使用

一、SDKMAN

假如你同时参与了一个使用JDK 8的项目和一个采用JDK 17特性的项目。每次在两个项目之间切换时,你都面临着版本冲突的问题。如果有那么一个工具类似于 Python 中的 anaconda 工具,可以帮助你管理不同版本的 SDK ,是不是非常有用,那 SDKMAN 就可以帮你实现。

SDKMAN 是一款面向Java开发者的命令行工具,旨在简化Unix系统上SDKs的管理。它支持跨平台使用,提供便捷的版本控制和切换功能,通过维护候选SDK列表,让用户能够轻松安装、更新和卸载各类软件开发工具包。SDK 支持如 Java,Groovy,Scala,Kotlin、Ceylon,也支持Maven,Gradle,SBT,Spring Boot,Vert.x 等。

二、Windows 安装

目前 Windows 有两种安装方式,WSLGit Bash 的方式,Git 大家电脑中应该都有安装,因此下面基于 Git Bash 进行安装 SDKMAN

首先安装 SDKMAN 会使用到 unzip、zip、curl、sed 命令,默认 Git 包含了 unzip、curl、sed 但缺少 zip

在这里插入图片描述

因此这里需要为 Git 集成 zip 命令,首先下载 zip 包:

https://sourceforge.net/projects/gnuwin32/files/zip/3.0/

在这里插入图片描述

下载后,将解压后 bin 目录下的 zip.exe 拷贝到 Git 安装目录下 mingw64/bin 目录下:

在这里插入图片描述

同时 zip 还依赖 bzip2 ,因此还要下载 bzip2 包:

https://sourceforge.net/projects/gnuwin32/files/bzip2/1.0.5/

在这里插入图片描述

下载后,将解压后 bin 目录下的 bzip2.dll 拷贝到 Git 安装目录下 mingw64/bin 目录下:

在这里插入图片描述

然后再次尝试 zip 命令,可以看到已经可以了:

在这里插入图片描述

下面开始下载安装 SDKMAN ,在 Git Bash 中执行如下操作:

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

在这里插入图片描述
安装完成后,将 SDKMAN 添加到环境变量中:

source "$HOME/.sdkman/bin/sdkman-init.sh"

在这里插入图片描述

验证环境:

sdk version

在这里插入图片描述

三、SDKMAN 使用

3.1 查看所有可用的SDK

sdk list

在这里插入图片描述
可以看到可以安装非常多的应用,而不限于 JDK

3.2 查看所有指定类型可用的SDK

sdk list java

在这里插入图片描述

3.3 安装指定类型版本的SDK

sdk install java 21.0.2-open

在这里插入图片描述

3.4 切换并使用指定类型版本的SDK

sdk use java 21.0.2-open

在这里插入图片描述

验证 java 版本:

java --version

在这里插入图片描述

3.5 设置默认版本

sdk default java 21.0.2-open

在这里插入图片描述

3.6 查看当前使用的 SDK

sdk current

在这里插入图片描述

3.7 查看当前使用的指定类型的 SDK

sdk current java

在这里插入图片描述

3.8 查看 SDK 安装目录

sdk home java 21.0.2-open

在这里插入图片描述

3.8 卸载指定类型版本的SDK

sdk uninstall java 21.0.2-open

3.9 升级 SDKMAN

sdk selfupdate
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小毕超

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值