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 

在这里插入图片描述

相关内容

热门资讯

专业讨论!德扑之星真破解套路(... 专业讨论!德扑之星真破解套路(辅助挂)软件透明挂(有挂了解)-哔哩哔哩;人气非常高,ai更新快且高清...
每日必看!智星德州菠萝外挂检测... 每日必看!智星德州菠萝外挂检测(辅助挂)软件透明挂(有挂教学)-哔哩哔哩1、玩家可以在智星德州菠萝外...
透视透明挂!轰趴十三水有后台(... 轰趴十三水有后台赢率提升策略‌;透视透明挂!轰趴十三水有后台(辅助挂)软件透明挂(有挂详情)-哔哩哔...
发现玩家!德扑ai助手软件(辅... 发现玩家!德扑ai助手软件(辅助挂)透视辅助(有挂教学)-哔哩哔哩;玩家在德扑ai助手软件中需先进行...
一分钟了解!x-poker辅助... 一分钟了解!x-poker辅助软件(辅助挂)辅助透视(有挂攻略)-哔哩哔哩1、每一步都需要思考,不同...
一分钟揭秘!德州最新辅助器(辅... 一分钟揭秘!德州最新辅助器(辅助挂)透视辅助(有挂攻略)-哔哩哔哩;德州最新辅助器最新版本免费下载安...
玩家攻略推荐!德州辅助(辅助挂... 玩家攻略推荐!德州辅助(辅助挂)辅助透视(有挂了解)-哔哩哔哩是由北京得德州辅助黑科技有限公司精心研...
揭秘真相!pokernow德州... 《揭秘真相!pokernow德州(辅助挂)辅助透视(有挂介绍)-哔哩哔哩》 pokernow德州软件...
五分钟了解!德州之星辅助器(辅... 五分钟了解!德州之星辅助器(辅助挂)辅助透视(有挂透明)-哔哩哔哩1、很好的工具软件,可以解锁游戏的...
推荐一款!pokermaste... 1、推荐一款!pokermaster有外挂(辅助挂)透视辅助(有挂教学)-哔哩哔哩;详细教程。2、p...