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. [LeetCode] [LeetCode] Populating Next Right Pointers in Each Node II

    Follow up for problem "Populating Next Right Pointers in Each Node". What if the given tre ...

  2. 平衡树以及AVL树

    平衡树是计算机科学中的一类数据结构. 平衡树是计算机科学中的一类改进的二叉查找树.一般的二叉查找树的查询复杂度是跟目标结点到树根的距离(即深度)有关,因此当结点的深度普遍较大时,查询的均摊复杂度会上升 ...

  3. AtCoder Grand Contest 019 B: Reverse and Compare

    题意: 给出一个字符串,你可以选择一个长度大于等于1的子串进行翻转,也可以什么都不做.只能翻转最多一次. 问所有不同的操作方式得到的字符串中有多少个是本质不同的. 分析 tourist的题妙妙啊. 首 ...

  4. Testng 运行Cannot find class in classpath

    用Testng运行多个class,结果报: org.testng.TestNGException: Cannot find class in classpath: Salesman     at or ...

  5. BZOJ3574 HNOI2014抄卡组(哈希)

    容易发现通配符中间的部分可以任意匹配,会造成的无法匹配的仅仅是前后缀,前缀和后缀可以分别独立处理.如果字符串均有通配符,只需要按前/后缀长度排序然后暴力匹配就可以了. 问题在于存在无通配符的字符串.显 ...

  6. [51nod1847]奇怪的数学题

    description 51nod 求\[\sum_{i=1}^{n}\sum_{j=1}^{n}sgcd(i,j)^k\]其中\(sgcd(i,j)\)表示\(i,j\)的次大公约数,如果\(gcd ...

  7. 跟我学Spring Cloud(Finchley版)-20-Spring Cloud Config-Git仓库配置详解 原

    在跟我学Spring Cloud(Finchley版)-19-配置中心-Spring Cloud Config 一节中,已实现使用Git仓库作为Config Server的后端存储,本节详细探讨如何配 ...

  8. Oracle 高性能SQL引擎剖析----执行计划

    执行计划是指示Oracle如何获取和过滤数据.产生最终结果集,是影响SQL语句执行性能的关键因素.我们在深入了解执行计划之前,首先需要知道执行计划是在什么时候产生的,以及如何让SQL引擎为语句生成执行 ...

  9. 【BZOJ4129】Haruna’s Breakfast(树上莫队)

    [BZOJ4129]Haruna's Breakfast(树上莫队) 题面 BZOJ Description Haruna每天都会给提督做早餐! 这天她发现早饭的食材被调皮的 Shimakaze放到了 ...

  10. Codeforces Round #406 (Div. 2)滚粗记

    A 一看到题,不是一道解不定方程的裸题吗,调了好久exgcd. 其实一个for就好了啊 B 一直WA ON TEST 7真是烦,一想会不会是编号太大了,又写了一个map版本,无用. 调了好久好久才发现 ...