Windows平台SDKMAN工具使用

为方便jvm生态的软件版本管理,可以使用sdkman工具来安装和管理诸如javagradle等软件的当前使用版本。尤其是大多数程序员都是在windows平台开发,团队开发通常都需要统一的jvm相关软件的版本。这里给大家演示下windows平台如何安装和使用sdkman来实现这一需求。

文章目录

下载安装类Unix工具MSYS2

MSYS2下载地址:https://www.msys2.org/主页的安装链接

MSYS2安装,位置可自己指定:D:\Programs\msys64

说明

安装位置默认是系统盘,后续用sdk安装的软件会放在sdk安装目录中,要是系统盘空间有限,建议自己指定sdkman安装盘。

在开始菜单中把MSYS2 MSYS发送桌面快捷方式,方便调取。

解决MSYS2下Windows环境变量不能用的问题

新增环境变量MSYS2_PATH_TYPE,值为inherit,重启MSYS2

安装sdkman

shell 复制代码
# 安装zip、unzip
pacman -S zip unzip
# 安装sdkman
export SDKMAN_DIR="D:/Programs/sdkman" && curl -s "https://get.sdkman.io" | bash
# 让环境变量马上生效,这样新开一个命令窗口sdk命令也生效
source "D:/Programs/sdkman/bin/sdkman-init.sh"
# 查看版本
sdk version

实战 - 安装和使用groovy

sh 复制代码
# 查看groovy版本 如果显示的列表太长,按上下键滚动,按q建退出
sdk list groovy

# 先安装3.0.4版本
sdk install groovy 3.0.4
# 再安装4.0.22版本,方便演示版本切换
sdk install groovy 4.0.22

# 在当前shell会话中使用指定版本
sdk use groovy 3.0.4

# 对所有shell会话都生效,注意要获取管理员权限
# 设置的路径为:D:\Programs\sdkman\candidates\groovy\current
# 为了访问groovy命令,在Path中添加路径:D:\Programs\sdkman\candidates\groovy\current\bin
sdk default groovy 4.0.22

# 查看当前sdk使用的所有安装好的软件版本
sdk current 
# 查看当前sdk使用的groovy软件版本
sdk current groovy

# 自行演示groovy版本切换

更优雅的设置环境变量

这里把D:\Programs\sdkman\candidates\groovy\current\bin直接添加到Path环境变量不是那么优雅。更好的做法:新建环境变量GROOVY_HOME指向D:\Programs\sdkman\candidates\groovy\currentPath中添加%GROOVY_HOME%\bin

实战 - 安装jdk

sh 复制代码
# 查看jdk版本
sdk list java

# 安装指定版本
sdk install java 17.0.12-oracle
sdk install java 22.0.2-oracle
# 设置当前使用的版本
sdk default java 17.0.12-oracle

将路径:D:\Programs\sdkman\candidates\java\current设置为JAVA_HOME环境变量的值。Path变量中添加%JAVA_HOME%\bin

注意

这种软链接方式设置当前版本,其路径在集成开发环境idea中绑定本地jdk会有问题,笔者实践时遇到编译源代码找不到jdk类库,绑定特定jdk版本的安装路径则问题解决。

这种方式有问题

下面这种ok

相关推荐
低频电磁之道10 小时前
解决 Windows C++ DLL 导出类不可见的编译错误
c++·windows
IDC02-阿杰12 小时前
Windows WSL2安装Ubuntu24.04全攻略
linux·windows
勤自省14 小时前
Windows 文件无法粘贴到 Linux(Ubuntu)系统的解决方案
linux·windows·ubuntu
张赐荣14 小时前
为资源管理器文件右键菜单增加 使用 Web 搜索 功能
windows
以太浮标15 小时前
华为eNSP模拟器综合实验之- DHCP、DNS、HTTP和FTP服务器配置案例Client-Server
linux·服务器·windows·http·华为·信息与通信
帕里亚15 小时前
ubuntu18.04 APT升级 glibc2.28 (Jetson)
linux·运维·windows
charlie11451419117 小时前
通用GUI编程技术——图形渲染实战(二十八)——图像格式与编解码:PNG/JPEG全掌握
开发语言·c++·windows·学习·图形渲染·win32
2601_9557819817 小时前
OpenClaw Windows 部署全程图文教程 | 免代码
windows
玖釉-18 小时前
告别 Shared Memory 瓶颈:Vulkan Subgroup 架构解析与硬核实战指南
开发语言·c++·windows·图形渲染
十五年专注C++开发18 小时前
windows和linux使用system启动进程是一样的吗?
linux·c++·windows·system