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. Kafka在大型应用中的 20 项最佳实践

    原标题:Kafka如何做到1秒处理1500万条消息? Apache Kafka 是一款流行的分布式数据流平台,它已经广泛地被诸如 New Relic(数据智能平台).Uber.Square(移动支付公 ...

  2. dom变成jquery对象 先获取dom对象 然后通过$()转换成jquery对象

    dom变成jquery对象   先获取dom对象 然后通过$()转换成jquery对象

  3. Android 解决ScrollView嵌入ListView | GridView | ScrollView显示问题

    一.ScrollView中嵌套ListView ScrollView和ListView都是滚动结构,很明显如果在ScrollView中加入ListView,可以预见性的知道,肯定会有显示/滚动的问题, ...

  4. NOIP2003 传染病控制 【搜索 + 卡时】

    题目背景 近来,一种新的传染病肆虐全球.蓬莱国也发现了零星感染者,为防止该病在蓬莱国大范围流行,该国政府决定不惜一切代价控制传染病的蔓延.不幸的是,由于人们尚未完全认识这种传染病,难以准确判别病毒携带 ...

  5. 使DIV相对窗口大小左右拖动始终水平居中

    <!doctype html> <html> <head> <meta http-equiv="content-type" content ...

  6. 解决电脑各种 dll 文件丢失问题

    https://jingyan.baidu.com/article/ae97a646f9dbfdbbfc461d6d.html 下载鲁大师,点右上角的 游戏库,然后再点右上角的  修复  ,一键修复即 ...

  7. #define _INTSIZEOF(n) ((sizeof(n)+sizeof(int)-1)&~(sizeof(int) - 1) )

    原文 功能: 首先,sizeof(int)肯定是2的次方数,比如32位是4,64位是8 ((sizeof(n)+sizeof(int)-1)&~(sizeof(int) - 1) ) 的意思就 ...

  8. 转:Unable to execute dex: Multiple dex files define 解决方法

    转自:http://blog.csdn.net/mxlxiao7/article/details/8978930 问题发生概述: 程序编译正常,在用Eclipse调试执行时,报错Unable to e ...

  9. php 傻瓜式代码计算两个时间间隔

    $stamp = (strtotime($_POST['start'])-strtotime($_POST['end'])); $s = $stamp%60; //秒 $m_stamp= ($stam ...

  10. codevs 2796 最小完全图

    2796 最小完全图 http://codevs.cn/problem/2796/  时间限制: 1 s  空间限制: 128000 KB     题目描述 Description 若一个图的每一对不 ...