Code:

@echo OFF
rem 修改背景/字体颜色为黑/绿
color 0A rem 自动设置JDK环境变量,本程序不会对 [系统环境变量] 造成破环!不需要重启!!
rem 没有%%JAVA_HOME%%变量值则设置%%JAVA_HOME%%,%%CLASSPATH%%,补充%%PATH%%
rem 有%%JAVA_HOME%%变量值则设置过;会仅更新%%JAVA_HOME%%
echo + 自动设置JDK环境变量,不需要重启!!
echo + 首次使用注意:
echo + 1.自行修改31,32行
echo + [当前用户环境变量]
echo + JAVA_HOME: "%JAVA_HOME%"
echo + CLASSPATH: "%CLASSPATH%"
echo + PATH: "%PATH%" :menu
echo.
echo.
echo -----------------------------------------------------
echo + 菜单 ............................[快捷键] +
echo + 1 .设置环境变量为JDK1.6 ..............[1] +
echo + 2 .设置环境变量为JDK1.7 ..............[2] +
echo + m .返回显示菜单 ......................[m] +
echo + q .退出...............................[q] +
echo -----------------------------------------------------
echo.
echo. @rem 用户设置jdk路径 set java6path=D:\java\jdk1.6.0_20
set java7path=D:\java\jdk1.7.0_17 if "%JAVA_HOME%" == "" (
echo 没有检测到%%JAVA_HOME%%
goto noJavaHome
) else (
echo 已检测到%%JAVA_HOME%%
goto hasJavaHome
) :noJavaHome set /p off=请输入对应的快捷键1/2/m/q并按回车:
if /i "%off%"=="1" goto noJavaHome_setJDK1.5
if /i "%off%"=="2" goto noJavaHome_setJDK1.6
if /i "%off%"=="m" goto menu
if /i "%off%"=="q" exit
echo 无效输入。
goto menu :hasJavaHome set /p off=请输入对应的快捷键1/2/m/q并按回车:
if /i "%off%"=="1" goto hasJavaHome_setJDK1.6
if /i "%off%"=="2" goto hasJavaHome_setJDK1.7
if /i "%off%"=="m" goto menu
if /i "%off%"=="q" exit
echo 无效输入。
goto menu :noJavaHome_setJDK1.5
echo + 2 .没有检测到%%JAVA_HOME%%;设置环境变量为JDK1.6 +
wmic ENVIRONMENT create name="JAVA_HOME",username="%UserName%",VariableValue="%java6path%"
wmic ENVIRONMENT create name="CLASSPATH",username="%UserName%",VariableValue=".;%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%\lib\dt.jar;"
wmic ENVIRONMENT create name="Path",username="%UserName%",VariableValue="%%JAVA_HOME%%\bin"
echo + 设置完毕,任意键退出 +
goto anyKeyToExit
:noJavaHome_setJDK1.6
echo + 3 .没有检测到%%JAVA_HOME%%;设置环境变量为JDK1.7 +
wmic ENVIRONMENT create name="JAVA_HOME",username="%UserName%",VariableValue="%java7path%"
wmic ENVIRONMENT create name="CLASSPATH",username="%UserName%",VariableValue=".;%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%\lib\dt.jar;"
wmic ENVIRONMENT create name="Path",username="%UserName%",VariableValue="%%JAVA_HOME%%\bin"
echo + 设置完毕,任意键退出 +
goto anyKeyToExit :hasJavaHome_setJDK1.6
echo + 2 .已检测到%%JAVA_HOME%%;设置环境变量为JDK1.6 +
echo "%java6path%"
wmic ENVIRONMENT where "name='JAVA_HOME'" set VariableValue="%java6path%"
echo + 设置完毕,任意键退出 +
goto anyKeyToExit
:hasJavaHome_setJDK1.7
echo "%java7path%"
echo + 3 .已检测到%%JAVA_HOME%%;设置环境变量为JDK1.7 +
wmic ENVIRONMENT where "name='JAVA_HOME'" set VariableValue="%java7path%"
echo + 设置完毕,任意键退出 +
goto anyKeyToExit :anyKeyToExit pause

转载:http://blog.csdn.net/nsrainbow/article/details/40871773

BAT-快速切换JDK1.6/1.7的更多相关文章

  1. 本地安装JDK1.7和1.8,可相互快速切换

    1.JDK官网下载jdk1.7和jdk1.8 https://www.oracle.com/java/technologies/javase-jdk8-downloads.html 2.将jdk1.7 ...

  2. bat 批处理切换到当前脚本所在文件夹

    bat 批处理切换到当前脚本所在文件夹   切换到当前脚本所在的文件夹 ? 1 cd  %~dp0 另外附上一些bat基本内容 —————————————————————————————— 批处理常用 ...

  3. 巧用批处理cmd快速切换IP地址

    如果你的笔记本经常在不同的地方使用,有些地方需要自动获取IP,而有些地方需要配置固定IP,每换一个地方都需要重新配置一遍,是不是感觉很麻烦呢? 下面介绍一种通过建立批处理文件来快速切换IP的方法: s ...

  4. 多项目并行开发如何做到快速切换——sublime Text3

    sublime text有一个很人性化的功能,就是打开窗口的时候,它会把上一次关闭时的编辑器工作区状态完全复原(不论文件是否已经保存). 只有一个项目的时候,这个功能非常方便,可以保证重启电脑后cod ...

  5. mac平台多个php版本快速切换

    mac平台多个php版本快速切换 要求所有php版本都是由brew安装 使用brew安装php多版本方法 # brew install php56 # brew install php70 安装切换工 ...

  6. 关于微信聊天与朋友圈如何快速切换 Mark

    用微信时,你是否遇到这样的情况.你正刷着朋友圈,享受着各种鸡汤,这时候,你收到一条微信,一看是女王大人,不得不回.你诚恳的回了一条,等了二十秒不见有什么回应,于是就退了出来,进入朋友圈找到那篇没看完的 ...

  7. 【win8技巧】win8快速切换后台应用

    今天闲着没事来介绍下win8的使用技巧,不得不说win8把PC带入了Pad时代. 第一招:Win + Tab 在屏幕的最左边就会出现我们想要的后台应用,类似安卓的长按Home的最近任务. 第二招:Al ...

  8. 一些有用的 Emacs 配置(窗口快速切换、一键透明效果、任意位置删除整行等)

    本篇文章记录的是一些有用的 Emacs 配置,有些是自己原创,有些是借鉴别人(能记起来出处的我放了链接). 规定:C 代表 Ctrl,M 代表 Alt. 1.设置一次跳跃 n 行的快捷键 按 C-M- ...

  9. Android studio多个项目之间怎么实现快速切换?

    Android studio多个项目之间怎么实现快速切换?Android studio中打开的项目太多了,想切换到一个项目很麻烦,怎么才能快速切换到另一个项目中呢?请看下文详细介绍 在对Android ...

  10. 快速切换天财商龙门店后台.VB6.0

    名称:快速切换天财商龙门店后台 作者:landv 时间:2015年8月21日 功能:快速切换天财商龙门店后台 环境:VB6.0 注:懒的一行一行修改文件了,直接覆盖配置文件,Tcgem.ini 只能反 ...

随机推荐

  1. 第192天:js---Date对象属性和方法总结

    Date对象构造函数重载方法 一.第一种重载方法---基本 当前时间 //构造函数 - 第一种重载方法:基本 当前时间 console.log('构造函数 - 第一种重载方法:基本 当前时间') da ...

  2. MariaDB插入中文出现???情况

    本来打算创建一个测试表进行一个简单的实验,发现创建完python_test表后插入数据后,select发现所有中文都变成问号了,这一看就是出现了乱码 MariaDB [lhc]> create ...

  3. C++解析(27):数组、智能指针与单例类模板

    0.目录 1.数组类模板 1.1 类模板高效率求和 1.2 数组类模板 1.3 堆数组类模板 2.智能指针类模板 2.1 使用智能指针 2.2 智能指针类模板 3.单例类模板 3.1 实现单例模式 3 ...

  4. 【BZOJ4889】不勤劳的图书管理员(树套树)

    [BZOJ4889]不勤劳的图书管理员(树套树) 题面 又是权限题,烦死了 洛谷真好 题解 分开考虑每一次交换产生的贡献. 假设交换\((x,y)\) 检查\(x\)与\(y\)对于区间\([x+1, ...

  5. 跨域通信的解决方案JSONP

    在web2.0时代,熟练的使用ajax是每个前端攻城师必备的技能.然而由于受到浏览器的限制,ajax不允许跨域通信. JSONP就是就是目前主流的实现跨域通信的解决方案. 虽然在在jquery中,我们 ...

  6. 流媒体协议之JRTPLIB的使用20170919

    主要介绍JRTPLIB 2.x系列和3.x系列两种版本,它们的区别是2.x系列代码量少使用简单,但是只支持RFC 1889不支持RFC 3550,3.x支持RFC 3550,但代码量稍多,以及使用也稍 ...

  7. Linux之时间相关操作20170607

    一.Linux常用时间相关函数 -asctime,ctime,getttimeofday,gmtime,localtime,mktime,settimeofday,time asctime       ...

  8. discuz更换域名,登录不了解决

    准备工作 :因为域名更换了,因此原域名就不能再进后台了,请申请好新域名,并正确备案,让机房添加白名单,重新解析,重新绑定空间..... 完成一系列工作后,进入DZ程序修改. ------------- ...

  9. 前端PHP入门-019-内置函数之数学函数-很重要

    查看帮助文档为主 函数名 描述 实例 输入 输出 abs() 求绝对值 $abs = abs(-4.2); //4.2 数字 绝对值数字 ceil() 进一法取整 echo ceil(9.999); ...

  10. CIFAR10/CIFAR100数据集介绍

    CIFAR-10/CIFAR-100数据集解析 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 CIFAR-10/CIFAR-100数据集 CIFAR-10和CIFAR-100被标记 ...