Windows下使用SDKMAN对JDK(Java)进行多版本管理
创始人
2025-01-10 04:32:54
0

Windows下使用SDKMAN对JDK(Java)进行多版本管理

  • 1.背景
  • 2.基于msys2工具
    • 2.1. msys2简介
    • 2.2. 安装与配置
    • 2.2. Windows环境变量配置参考
    • 2.3 结果确认
  • 3. 基于WSL

1.背景

前端有nvm,python有miniconda,miniforge等,java呢?java在Linux,Macos下有SDKMAN以及其他的版本管理工作,SDKMAN好用,但不直接支持Windows,本文通过深度,摸索出一个可以在Windows下使用的SDKMAN方式。

2.基于msys2工具

推荐此方式

2.1. msys2简介

MSYS2(Minimal SYStem 2)是一个集成了大量的GNU工具链、工具和库的开源软件包集合。它提供了一个类似于Linux的shell环境,可以在Windows系统中编译和运行许多Linux应用程序和工具。
MSYS2基于MinGW-w64平台,提供了一个完整的开发环境,包括GCC编译器、GDB调试器、Make、Git版本控制系统和许多其他开发工具。除了常用的开发库和工具之外,MSYS2还提供了许多专门针对Windows平台的库和工具,方便开发人员进行跨平台开发和移植工作。
由于MSYS2拥有比较完整的Linux工具链和库,因此它成为了许多跨平台开发和移植项目的首选工具。另外,使用MSYS2也可以轻松地在Windows系统中搭建一个类似于Linux的软件开发环境,方便开发人员进行开发和调试工作。

2.2. 安装与配置

进入MSYS2(https://www.msys2.org/)下载
在这里插入图片描述
安装msys2后,对应的用户目录"msys2安装目录\home\windows用户名"
在这里插入图片描述
运行msys2 ucrt64 终端,然后在其操作

pacman -S zip unzip #安装zip,unzip curl -s "https://get.sdkman.io" | bash #安装sdkman source "$HOME/.sdkman/bin/sdkman-init.sh" #环境变量即时生效 sdk version #版本查看 sdk install java 17.0.10-oracle #安装jdk 

在这里插入图片描述
位置:C:\msys64\home\long.sdkman\candidates\java\current
在这里插入图片描述

2.2. Windows环境变量配置参考

进入界面进行环境变量设置
在这里插入图片描述
参考变量与值设定

JAVA_HOME: C:\msys64\home\long\.sdkman\candidates\java\current Path:  %JAVA_HOME%\bin CLASSPATH:.,%JAVA_HOME%\lib\tool.jar;%JAVA_HOME%\lib\dt.jar 

2.3 结果确认

因为windows配置的current,因此需要切换版本时,直接在msys2命令台切换即可。
在这里插入图片描述

3. 基于WSL

**注意:**此方式仅限WSL内使用,使用方式同Linux
友情提醒:安装sdkman,并指定sdkman安装位置到C盘根目录sdkman中,取代默认wsl主机中的~/.sdkman ,这样windows也可以正常访问(java这事访问也没有意义,因为下载下来的是Linux的命令,无法执行)。因为默认情况下,wsl主机中可以直接访问的所有,而windows访问wsl则需要通过\这种非文件协议,导致不方便

sudo apt install zip unzip curl -s "https://get.sdkman.io" | bash #安装sdkman #export SDKMAN_DIR="/mnt/c/sdkman" && curl -s "https://get.sdkman.io" | bash #安装sdkman,并指定sdkman安装位置到C盘根目录sdkman中,取代默认wsl主机中的~/.sdkman ,这样windows也可以正常访问(java这事访问也没有意义,因为下载下来的是Linux的命令,无法执行)。因为默认情况下,wsl主机中可以直接访问的所有,而windows访问wsl则需要通过\\这种非文件协议,导致不方便 source "$HOME/.sdkman/bin/sdkman-init.sh" #环境变量即时生效 sdk version #版本查看 sdk install java 17.0.10-oracle #安装jdk 

安装后确认其位置

whereis java 

显示在用户主目录的.sdkman/candidates/java/17.0.10-oracle/bin/java
在这里插入图片描述
直接在地址栏访问,这里为Linux根目录,进入java目录,也是Linux版本的java,这个和msys2不同,在msys2进去java的目录是windows版本的java

\\wsl.localhost\Ubuntu 

在这里插入图片描述

相关内容

热门资讯

记者揭秘!微友辅助器免费版v2... 记者揭秘!微友辅助器免费版v2.0(辅助挂)一直有开挂辅助黑科技(有挂讲解);记者揭秘!微友辅助器免...
揭秘攻略!新西游拼十辅助器,玫... 揭秘攻略!新西游拼十辅助器,玫瑰大厅辅助,透视教程(有挂教学)是一款可以让一直输的玩家,快速成为一个...
盘点一款!微乐陕西小程序脚本,... 盘点一款!微乐陕西小程序脚本,雀姬手游辅助,切实教程(发现有挂);1、点击下载安装,微乐陕西小程序脚...
重磅来袭!天天填大坑辅助器免费... 重磅来袭!天天填大坑辅助器免费下载(辅助挂)真是有开挂辅助器(有挂透明挂)1、玩家可以在天天填大坑辅...
科普攻略!创思维激k辅助下载(... 科普攻略!创思维激k辅助下载(辅助挂)竟然有开挂辅助软件(有挂技巧);1、创思维激k辅助下载专用辅助...
让我来分享经验!新上游通用卦,... 让我来分享经验!新上游通用卦,火神大厅科技,我来教教你(真实有挂);2024专业科技教程插件曝光有挂...
透视辅助!微乐陕西小程序破解器... 您好,微乐陕西小程序破解器下载这款游戏可以开挂的,确实是有挂的,需要了解加微【485275054】很...
揭秘关于!广东雀用的是什么智能... 揭秘关于!广东雀用的是什么智能插件官(辅助挂)一直有开挂辅助插件(有挂教程)1、每一步都需要思考,不...
信息共享!约逗东乡辅助器(辅助... 信息共享!约逗东乡辅助器(辅助挂)真是有开挂辅助挂(有挂头条);是一款可以让一直输的玩家,快速成为一...
分享实测!新玄龙小程序辅助,新... 您好:新玄龙小程序辅助这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌...