-
windows下使用批处理脚本实现多个版本的JDK切换
一.JDK版本切换批处理脚本
我们平时在window上做开发的时候,可能需要同时开发两个甚至多个项目,有时不同的项目对JDK的版本要求有区别,这时候我们可能会在一台电脑上安装多个版本的JDK,如下图所示:
当我们想要切换使用的JDK版本时,我们可以有两种做法:
1.手动去修改JAVA_HOME环境变量,将变量的值指向对应的JDK版本的安装目录即可.
2.通过编写批处理脚本来根据选择的JDK版本动态修改JAVA_HOME环境变量的值,这是一种偷懒的做法,这种做法需要一个RefreshEnv.exe辅助软件来刷新环境变量的值
在网上找到了一段可以动态修改JAVA_HOME环境批处理脚本,从而实现了JDK版本的动态切换,脚本代码如下:
1 @echo off 2 3 rem --- Base Config 配置JDK的安装目录 --- 4 :init 5 set JAVA_HOME_1_8=C:\Program Files\Java\jdk1.8.0_11 6 set JAVA_HOME_1_7=C:\Program Files\Java\jdk1.7.0_45 7 set JAVA_HOME_1_6=C:\Program Files\Java\jdk1.6.0_45 8 :start 9 echo 当前使用的JDK 版本: 10 java -version 11 echo. 12 echo ============================================= 13 echo jdk版本列表 14 echo 1.8 15 echo 1.7 16 echo 1.6 17 echo ============================================= 18 19 :select 20 set /p opt=请选择jdk版本: 21 if %opt%==1.8 ( 22 set TARGET_JAVA_HOME=%JAVA_HOME_1_8% 23 ) 24 if %opt%==1.7 ( 25 set TARGET_JAVA_HOME=%JAVA_HOME_1_7% 26 ) 27 if %opt%==1.6 ( 28 set TARGET_JAVA_HOME=%JAVA_HOME_1_6% 29 ) 30 31 echo 当前选择的Java路径:%TARGET_JAVA_HOME% 32 33 wmic ENVIRONMENT where "name='JAVA_HOME'" delete 34 wmic ENVIRONMENT create name="JAVA_HOME",username="<system>",VariableValue="%TARGET_JAVA_HOME%" 35 36 rem -- refresh env --- 37 call RefreshEnv 38 39 echo 请按任意键退出! 40 pause>nul 41 42 @echo on
这段批处理脚本代码是根据我们选择的JDK版本来动态修改JAVA_HOME环境变量的,然后RefreshEnv.exe来刷新环境变量的值.
二.使用方法
将上述的批处理脚本代码保存为.bat文件,并将RefreshEnv.exe辅助软件和.bat脚本文件放到同一个目录下,如下图所示:
双击.bat文件运行批处理脚本,根据提示操作即可,如下图所示:
执行完成后,JAVA_HOME环境变量的值就被修改成对应的JDK版本的安装目录了
这段批处理脚本只会修改JAVA_HOME环境变量的值,不会影响到Path变量的值,因此可以放心使用.为了方便大家使用,我把工具分享给大家,JDK版本切换工具下载
http://pan.baidu.com/s/1baGnpW
出处:https://www.cnblogs.com/xdp-gacl/p/5209386.html
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数