当前位置: 首页 > news >正文

JDK Version Manager (JVMS)

以下是使用 JDK Version Manager (JVMS) 工具在Windows系统中安装JDK的详细步骤及注意事项,结合多篇搜索结果整理而成:
---
一、安装前准备
1. 下载JVMS  
   - 访问 [GitHub Releases页面](https://github.com/ystyle/jvms/releases) 或镜像地址(如 `https://gitcode.com/gh_mirrors/jv`)下载最新版的 `jvms.exe` 文件。
   - 建议将文件解压到自定义目录(如 `D:\jvms`),避免使用默认路径(如 `C:\Program Files`)。
2. 初始化JVMS  
   - 以管理员身份打开命令提示符或PowerShell,导航到解压目录。
   - 执行初始化命令:  
     ```bash
     jvms.exe init
     ```
     - 此操作会创建符号链接和配置文件,确保系统环境变量正确配置。
---
二、安装JDK版本
方法1:在线安装
1. 列出可用版本  
   运行以下命令查看可下载的JDK版本列表:  
   ```bash
   jvms.exe rls
   ```
   - 支持的版本包括Oracle JDK、OpenJDK等。
2. 安装指定版本  
   输入版本号安装(例如安装JDK 11):  
   ```bash
   jvms.exe install 11.0.15.1
   ```
   - 若网络较慢,可添加代理参数:  
     ```bash
     jvms install 11.0.15.1 --proxy http://127.0.0.1:7890
     ```
方法2:手动添加已下载的JDK
1. 创建store目录  
   在解压后的JVMS目录下新建 `store` 文件夹(如 `D:\jvms\store`)。
2. 复制JDK文件  
   将已下载的JDK安装包(如 `jdk-1.8.0_301`)复制到 `store` 目录中,并重命名文件夹为简洁版本号(如 `1.8.0`)。
---
三、切换JDK版本
1. 查看已安装版本  
   ```bash
   jvms.exe ls
   ```
   - 输出示例:  
     ```
     1.8.0
     11.0.15.1
     ```
2. 切换版本  
   输入版本号切换(需以管理员身份运行命令):  
   ```bash
   jvms.exe switch 1.8.0
   ```
   - 验证是否成功:  
     ```bash
     java -version
     ```
     - 若显示对应版本信息,则切换成功。
---
四、注意事项
1. 权限问题  
   - 初始化和切换版本时必须使用管理员权限,否则会报错(如 `set Environment variable JAVA_HOME failure`)。
2. 环境变量冲突  
   - 使用JVMS前建议删除原有 `JAVA_HOME` 环境变量,避免冲突。
3. 符号链接限制  
   - JVMS通过符号链接管理JDK路径,若需保留历史版本,可直接复制到 `store` 目录。
4. 多版本共存  
   - 支持同时安装多个JDK版本,无需卸载旧版本。
---
五、优势总结
- 快速切换:1条命令即可切换版本,避免手动修改环境变量。
- 轻量管理:无需重复下载公共文件,节省磁盘空间。
- 兼容性:支持Oracle JDK、OpenJDK及自定义版本。
通过以上步骤,可高效管理多版本JDK,尤其适合需要同时维护多个项目环境的开发者。
 

http://www.xdnf.cn/news/315757.html

相关文章:

  • 【论文阅读】在调制分类中针对对抗性攻击的混合训练时和运行时防御
  • Web 架构之动静分离:原理、实践与优化
  • WHAT - Rust 智能指针
  • 【PostgreSQL】数据库主从库备份与高可用部署
  • 探索智能体开发新边界:Cangjie Magic开源平台体验与解析
  • maven基本介绍
  • Nginx+Lua+Redis实现灰度发布
  • spring4.x详解介绍
  • 一个电平转换电路导致MCU/FPGA通讯波形失真的原因分析
  • Go语言八股之channel详解
  • LeetCode 热题 100 64. 最小路径和
  • 明远智睿SD2351核心板:工业AIoT时代的创新引擎
  • 大数据、物联网(IoT)、平台架构与设计重构大模型应用
  • 轻松管理房间预约——启辰智慧预约小程序端使用教程
  • 软考 系统架构设计师系列知识点 —— 黑盒测试与白盒测试(2)
  • Linux中的`export` 设置的环境变量是临时的吗?如何永久生效?
  • 使用 AI 如何高效解析视频内容?生成思维导图或分时段概括总结
  • AI驱动的Kubernetes管理:kubectl-ai 如何简化你的云原生运维
  • 验证es启动成功
  • Nacos源码—5.Nacos配置中心实现分析一
  • Linux内核初始化机制全解析:从pure_initcall到late_initcall
  • ETL介绍
  • AI与Web3.0:去中心化智能合约的未来
  • 成都养老机器人“上岗”,机器人养老未来已至还是前路漫漫?
  • 为了结合后端而学习前端的学习日志(1)——纯CSS静态卡片案例
  • 移动二维矩阵
  • 场景可视化与数据编辑器:构建数据应用情境​
  • 结构可视化:利用数据编辑器剖析数据内在架构​
  • 什么是跨域,如何解决跨域问题
  • Mac 使用 Charles代理生成https服务