转自: http://www.cnblogs.com/ssihc/archive/2011/05/10/2041918.html
刚刚在网上看到很多关于设置JDK的文章,非常不错。
但一做实验,代码上总有点问题,不是很人性化。
于是选了两个精炼的脚本,整理成以下代码
IF EXIST %CD%\bin\java.exe (
IF EXIST %systemroot%\system32\setx.exe (
@ECHO "设置JAVA_HOME:%CD%"
@SETX JAVA_HOME %CD%
@ECHO "设置CLASSPATH:.;%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\jre\lib\rt.jar"
@SETX CLASSPATH ".;%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\jre\lib\rt.jar"
@ECHO "设置PATH:%%JAVA_HOME%%\bin"
@SETX PATH "%%JAVA_HOME%%\bin"
@ECHO JDK环境变量设置成功
) ELSE (
@ECHO ON
@ECHO 未能找到%systemroot%\system32\setx.exe,请下载setx.exe程序
)
) ELSE (
@ECHO ON
@ECHO JDK安装目录不正确,未能按照预期计划执行
)
@PAUSE
将上面蓝色部分代码COPY下来。另存为 JDKConfig
路径最好就用 " " 包括起来,以防路径中含有空格
本人喜欢把它设置成用户变量类型,这样配置比较清晰,容易修改,反正平常都是单用户登陆的,
其实就跟系统变量没两样
在命令提示符下。输入
例如这样输入
它会输出
没错,就是当前路径。
%systemroot%
即WINDOWS安装目录
平时我的电脑设置环境变量时,就要输入
那是因为在DOS下,取出JAVA _HOME的时候,需要一双%% ,但是如果就这样设置的话
可能就会出现这样的值
@
当脚本执行到它时,会调用setx.exe这个小程序(注:系统文件夹System32下不一定有它,需要另行下载)
它可以将变量保存在电脑中,具体来说,其实就放在注册表中
你可以在这个分支上看到所有的系统变量
如果你已经执行了上面的脚本,但是发现在这个分支上没有值。请勿恐慌。
SetX 有三种使用方式:
语法 1:
语法 2:
SETX [/S system [/U [domain\]user [/P [password]]]] var /K regpath
语法 3:
SETX [/S system [/U [domain\]user [/P [password]]]]
/F file {var {/A x,y | /R x,y string}
| /X} [/D delimiters]
上面的实例用的就是语法1,需要把环境变量写进系统变量里面的,只需要在后面加
更详细的解释可以看它的帮助