Java多版本切换,脚本快速实现JDK版本切换

快速切换JDK版本

一、系统多版本的JDK切换方案

JDK准备

去官网下载想要切换的JDK版本,

官网:https://www.oracle.com/cn/java/technologies/downloads/

我这里准备了jdk-8和jdk-11作为演示

我的JDK8的绝对路径是E:\Java\JDK1.8\JDK1.8,JDK11的绝对路径是E:\Java\jdk-11.0.20

这里一定要记住自己JDK存放的路径,因为要设置环境变量

image-20231008182528766

添加JAVA8_HOME环境变量

我的电脑 > 单击右键 > 属性 > 高级系统设置

image-20231008182732269

点击环境变量

image-20231008183403852

点击新建

image-20231008183450079

变量名为JAVA8_HOME,值为存放JDK8的根目录,点击确定。

image-20231008183648836

添加JAVA11_HOME环境变量

按照上面的步骤再次新建一个环境变量,变量名为JAVA11_HOME,值为存放JDK11的根目录

image-20231008183758000

添加JAVA_HOME环境变量

按照上面的步骤再次新建一个环境变量,变量名为JAVA_HOME,值为暂时为%JAVA8_HOME%

其中%%的作用是读取JAVA8_HOME环境变量的值,也就是说JAVA_HOME环境变量存放的是JDK8的地址。

image-20231008184108066

修改PATH环境变量

找到系统变量里面的PATH环境变量,点击修改或者双击

image-20231008184229993

点击新建,添加一条%JAVA_HOME%\bin%的环境变量。Java JDK 和 JRE 安装包通常包含一个名为 bin 的子目录,其中包含了 Java 的可执行文件,如 java.exejavac.exe 等。这些文件负责执行 Java 程序编译和运行的任务。同样%JAVA_HOME%读取的是刚才编写的JAVA_HOME的环境变量,这样就能通过JAVA_HOME找到JDK的bin目录,执行里面的可执行程序。

image-20231008184326267

测试JDK安装情况

在编辑完环境变量之后,就可以测试JDK是否安装成功,按照上面的步骤,现在测试的JDK版本应该是JDK8。

WIN+R打开命令提示符,输入java -version命令检查JDK的版本,如果能输出1.8则安装成功

如果输出'java' 不是内部或外部命令,也不是可运行的程序或批处理文件。则表示你的环境变量没有设置好。

image-20231008185227552

切换JDK的版本

根据上面的配置,我们的JAVA_HOME环境变量设置的是JAVA8_HOME的地址,所以我们现在的系统安装的JDK应该是JDK8。

image-20231008185515845

那么现在只需要修改JAVA_HOME的环境变量为%JAVA11_HOME%即可快速的切换JDK的版本。

image-20231008185635773

现在再来查看JDK的版本java -version,成功切换。

image-20231008185740017

二、使用脚本切换环境变量

创建修改脚本

上面切换JDK版本的本质就是切换环境变量,但是我们每次都切换环境变量是不是有些麻烦,作为一个懒人,我们可以考虑其他的切换方式,比如写一个脚本。

我们可以使用bat脚本的setx 命令将新的 JAVA_HOME 值写入系统环境变量。添加/M 选项将变量添加到系统环境变量而不是用户环境变量。

我们创建一个JDK8.bat的脚本文件,并使用记事本打开编辑,写入下面代码

@echo off

setx JAVA_HOME "%JAVA8_HOME%" /M

start cmd /k echo JAVA -version=8
  1. @echo off
    • @echo off 是批处理脚本(BAT)中的一个命令,用于关闭或禁用脚本的命令回显。
  2. setx JAVA_HOME "%JAVA8_HOME%" /M
    • setx 用于设置环境变量的命令。将"%JAVA8_HOME%" 分配给 JAVA_HOME
    • /M 选项表示要将变量添加到系统环境变量而不是用户环境变量。这将使 JAVA_HOME 在整个系统范围内可用。
  3. start cmd /k echo JAVA -version=8
    • start cmd 命令用于启动新的命令提示符窗口,以便在其中执行后续命令。
    • /k 选项告诉新的命令提示符窗口在执行完命令后不要关闭自己,以便你可以查看输出。
    • echo JAVA -version=8 命令用于在新的命令提示符窗口中输出文本 “JAVA -version=8”。这是一个显示消息的命令。

同时在编写一个JDK11.bat的批处理文件,用于修改JDK11

@echo off

setx JAVA_HOME "%JAVA11_HOME%" /M

start cmd /k echo JAVA -version=8
image-20231008190700852

注意:因为操作涉及修改环境变量,一定要单击右键 > 管理员运行

image-20231008190841776

运行成功显示以下内容:

image-20231008190929836

同时我们可以重新打开一个命令提示符,验证是否已经修改成功

image-20231008191022767

默认使用管理员打开脚本

我们发现每次使用脚本还得单击右键使用管理员打开,我们能不能直接双击打开脚本的时候就自动默认使用管理员打开呢?

文件默认使用管理员方式打开是通过修改他的高级属性的,但是我们发现直接打开bat的高级属性并没有默认使用管理员打开。

image-20231008191410735 image-20231008191501278

我们可以通过创建快捷方式实现

image-20231008191542731 image-20231008191618268

打开高级属性,修改默认管理员打开,点击确定,这样以后使用都使用快捷方式就可以啦

image-20231008191708964
  • 7
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值