原博文出自于:  http://www.cnblogs.com/xdp-gacl/p/5209386.html      感谢!

一.JDK版本切换批处理脚本

  我们平时在window上做开发的时候,可能需要同时开发两个甚至多个项目,有时不同的项目对JDK的版本要求有区别,这时候我们可能会在一台电脑上安装多个版本的JDK,如下图所示:

  

  当我们想要切换使用的JDK版本时,我们可以有两种做法:

  1.手动去修改JAVA_HOME环境变量,将变量的值指向对应的JDK版本的安装目录即可.

  2.通过编写批处理脚本来根据选择的JDK版本动态修改JAVA_HOME环境变量的值,这是一种偷懒的做法,这种做法需要一个RefreshEnv.exe辅助软件来刷新环境变量的值

  在网上找到了一段可以动态修改JAVA_HOME环境批处理脚本,从而实现了JDK版本的动态切换,脚本代码如下:

 1 @echo off2 3 rem --- Base Config 配置JDK的安装目录 ---4 :init 5 set JAVA_HOME_1_8=C:\Program Files\Java\jdk1.8.0_116 set JAVA_HOME_1_7=C:\Program Files\Java\jdk1.7.0_457 set JAVA_HOME_1_6=C:\Program Files\Java\jdk1.6.0_458 :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版本切换工具下载

转载于:https://www.cnblogs.com/zlslch/p/6038041.html

转】windows下使用批处理脚本实现多个版本的JDK切换相关推荐

  1. Windows下bat批处理脚本常用场景整理,持续更新中。。。

    Windows下bat批处理脚本常用场景整理,持续更新中... 一.Winodws下使用bat脚本对结果进行筛选 例如:在筛选出来的结果中,筛选是否有"$G"字段 adb shel ...

  2. Windows 下的批处理脚本基础——批处理运算操作(代码可拿)

      自从优盘中毒,就开始发现学习批处理脚本的重要性.一起加油冲冲冲!!! https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩 ...

  3. Windows 下的批处理脚本基础——网络相关命令(用户操作命令、用户组操作命令)

    自从优盘中毒,就开始发现学习批处理脚本的重要性.一起加油冲冲冲!!! 干正事!!! 目录 用户操作命令 查看用户帮助信息 查看用户详细帮助信息 查看用户详细信息 查看用户账户 删除用户 创建用户 用户 ...

  4. Windows 下的批处理脚本基础——炫酷命令提示符窗口(让窗口变成你喜欢的样子)

    https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩的成长日记 让这个可爱的宝藏女孩在努力的道路上与你一起同行! 如有转载,请 ...

  5. windows下运行vbs脚本

    windows下运行vbs脚本 vbs基础教程 简单的代码(此代码来自脚本之家,如果侵犯了您的权利请与本人联系) REM 输入并回显你的名字 '使用InputBox和Msgbox函数 '(上面及本行可 ...

  6. Windows下RMAN备份脚本

    Windows 下RMAN备份脚本,比较简单. 我们看内容. 1.      修改RMAN相关参数 RMAN>show all; RMAN>CONFIGURE CONTROLFILE AU ...

  7. KETTLE调度第三篇:Windows下调度Dos脚本编写和遇到的一些问题解决

    KETTLE调度第三篇:Windows下调度Dos脚本编写和遇到的一些问题解决 参考文章: (1)KETTLE调度第三篇:Windows下调度Dos脚本编写和遇到的一些问题解决 (2)https:// ...

  8. Windows系统bat批处理脚本实现暂停时间延迟方法

    描述:Windows系统bat批处理脚本实现暂停时间延迟方法 代码: @ping 127.0.0.1 -n 1 >nul

  9. 【RMAN】RMAN脚本中使用替换变量--windows 下rman全备脚本

    [RMAN]RMAN脚本中使用替换变量--windows 下rman全备脚本 一.1  BLOG文档结构图 一.2  前言部分 一.2.1  导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也 ...

最新文章

  1. Pandas 数据挖掘与分析时的常用方法
  2. python 线程锁 共享全局变量 线程通信
  3. python使用字典格式化字符串-Python字符串格式化-学这些就够用了
  4. Android5.0新特性:主题样式
  5. LeetCodeOJ. String to Integer (atoi)
  6. 红帽Openshift:入门–云中的Java EE6
  7. php与mysql连接程序_PHP与Mysql连接
  8. php中的echo、print,print_r、var_dump
  9. Java字符串找出4个字节长度的字符
  10. C++:值传递、指针传递、引用传递
  11. jupyter notebook使用opencv的例子_VSCode中使用jupyter notebook
  12. 算法笔记_面试题_8.零钱兑换
  13. SwiftyJSON 如何使用
  14. java 图片导出word_【freemaker实现导出word②】代码实现导出word(包括导出list数据和导出图片到word)...
  15. wps表格宏被禁用如何解禁_wps的excel中宏被禁用怎么办 - 卡饭网
  16. 运维学习 unit 5 用户的建立与管理
  17. 算法入门1:基本概念
  18. 微信小程序遇到的问题及解决办法
  19. Dicom学习之一:大尾和小尾LittleEndian/BigEndian
  20. Boost在Windows XP运行的编译方法

热门文章

  1. C语言case次数有限制吗,用switch...case语句统计数字、空格和其他字符出现的次数...
  2. guice google_与Google Guice的动手实践
  3. gitter 卸载_最佳Gitter频道:Scala
  4. 自动获取mysql建表语句_脚本工具---自动解析mysql建表语句,生成sqlalchemy表对象声明...
  5. memcache php mysql_PHP中的数据库二、memcache
  6. 如何禁止NumPy自动跳过数组的中心部分并仅打印角点
  7. js中修改this的指向方法整理
  8. 计算机二级周小丹,亲爱的设计丨周小丹:始终认真,才能保持“天真”
  9. Windows server2008服务器设置多用户登录
  10. 在typescript中导入第三方类库import报错