【实用工具】在 Windows 上使用 JVMS 管理多版本 JDK

文章目录

    • 前言
    • [JVMS 的主要功能](#JVMS 的主要功能)
    • [安装 JVMS](#安装 JVMS)
    • [初始化 JVMS](#初始化 JVMS)
    • [管理 JDK 版本](#管理 JDK 版本)
    • [手动添加 JDK](#手动添加 JDK)

前言

在 Java 开发过程中,针对不同的开发和测试需求,常常需要在多个 JDK 版本之间进行切换。手动管理这些版本可能繁琐且容易出错。为了解决这一问题,JDK Version Manager for Windows(JVMS) 应运而生。它是一个专为 Windows 用户设计的 JDK 版本管理工具,能够轻松地安装、切换和管理多个 JDK 版本。

JVMS 的主要功能

  • 多版本管理:支持同时安装和维护多个 JDK 版本,满足不同项目的需求。
  • 快速切换:通过简单的命令即可在不同的 JDK 版本之间切换。
  • 在线安装:直接从远程仓库下载并安装指定版本的 JDK。
  • 本地集成:自动配置环境变量,确保系统正确识别当前使用的 JDK 版本。

安装 JVMS

  1. 下载 JVMS :前往 GitHub Releases 页面,下载适用于您系统的最新版本。
  2. 解压文件 :将下载的压缩包解压到您选择的目录,例如 D:\常用软件\jvms

初始化 JVMS

在首次使用前,需要对 JVMS 进行初始化:

  1. 以管理员身份运行命令提示符:右键点击"命令提示符",选择"以管理员身份运行"。

  2. 执行初始化命令 :在命令提示符中,导航到 jvms.exe 所在目录,执行以下命令:

    bash 复制代码
    jvms init

    此操作将创建必要的配置文件和目录结构。

管理 JDK 版本

远程添加(这块比较吃网络,如果不成功可以看下面手动添加)

要查看可供安装的远程 JDK 版本列表,执行:

bash 复制代码
jvms rls -a

此命令将显示所有可用的 JDK 版本,供您选择安装。

安装指定版本的 JDK

例如,安装 JDK 11:

bash 复制代码
jvms install 11.0.15.1

安装过程可能需要一些时间,具体取决于您的网络状况。

查看本地已安装的 JDK 版本

要查看当前本地安装的所有 JDK 版本,执行:

bash 复制代码
jvms ls

此命令将列出所有已安装的 JDK 版本及其路径。

切换 JDK 版本

例如,切换到 JDK 11:

bash 复制代码
jvms switch 11.0.15.1

切换成功后,您可以通过以下命令验证当前使用的 JDK 版本:

bash 复制代码
java -version

请注意,切换 JDK 版本需要管理员权限,因此请确保以管理员身份运行命令提示符。

手动添加 JDK

如果您已经从其他渠道下载了 JDK,可以手动添加到 JVMS 的管理中:

之前文章有提到: JDK国内下载源

  1. 创建存储目录 :在 jvms.exe 所在目录下,新建一个名为 store 的文件夹。
  2. 添加 JDK :将下载的 JDK 解压后,放入 store 文件夹中。我之前已经安装过,默认安装在C盘的,也可以利用搜索工具看你安装在哪里。

然后复制过来,可以重命名文件夹。

  1. 刷新列表 :执行 jvms ls,即可看到新添加的 JDK 版本。

如果所示当前版本为JDK7,如果要切换到JDK11,使用下列命令即可:

bash 复制代码
jvms switch jdk11

新开一个CMD窗口进行验证

!!!同理可以切换为任意版本,切换后记得新开CMD窗口进行验证,保证环境刷新。

相关推荐
zzzsde2 小时前
【C++】stack和queue:优先级队列的使用及底层原理
开发语言·c++
杯莫停丶2 小时前
设计模式之:外观模式
java·设计模式·外观模式
乐之者v2 小时前
Mac常用软件
java·1024程序员节
TDengine (老段)2 小时前
TDengine 数据函数 ROUND 用户手册
java·大数据·数据库·物联网·时序数据库·tdengine·1024程序员节
TDengine (老段)2 小时前
TDengine 数学函数 RAND 用户手册
java·大数据·数据库·物联网·时序数据库·tdengine·涛思数据
從南走到北2 小时前
JAVA无人自助共享系统台球室源码自助开台约球交友系统源码小程序
java·微信·微信小程序·小程序·1024程序员节
是苏浙2 小时前
零基础入门C语言之操作符详解2
c语言·开发语言
野犬寒鸦2 小时前
从零起步学习MySQL || 第十章:深入了解B+树及B+树的性能优势(结合底层数据结构与数据库设计深度解析)
java·数据库·后端·mysql·1024程序员节
总有刁民想爱朕ha3 小时前
银河麒麟v10批量部署Python Flask项目小白教程
开发语言·python·flask·银河麒麟v10
yi碗汤园3 小时前
【一文了解】八大排序-插入排序、希尔排序
开发语言·算法·unity·c#·1024程序员节