添加java_添加java环境变量

本文介绍了一种通过批处理脚本来增加Java开发所需的JAVA_HOME、CLASS_PATH和Path环境变量的方法。脚本首先设置相关路径,然后检查Path环境变量中是否已包含Java的bin路径,如未包含则进行添加。同时,脚本还会更新CLASSPATH并刷新注册表,确保Java环境配置生效。
摘要由CSDN通过智能技术生成

b4fc1e07db4adb1dace614387818ac75.png

作者:朱金灿来源:http://blog.csdn.net/clever101               从网上搜了一些资料,再修改测试,终于通过了win7系统的测试。代码如下:@echo off

rem 本批处理文件目的为了增加Java开发的三个相关环境变量:JAVA_HOME、CLASS_PATH和Path

rem 作者:朱金灿,如有问题请发邮件:clever101@163.com

@set Path_=%javaPath%bin;%javaPath%jrebin

@reg add "HKLMsystemcontrolset001controlsession managerenvironment" /v JAVA_HOME /t reg_sz /d "%javaPath%" /f

rem 查询Path环境变量的所有路径

@set Path_=%javaPath%bin

for,/f,"tokens=1,2,* delims= ",%%a,in,('reg query "HKEY_LOCAL_MACHINESYSTEMControlSet001ControlSession ManagerEnvironment" /v Path'),do,(

@set PathAll_=%%c

)

rem 去除路径的最后的空格

:intercept

if "%PathAll_:~-1%"==" " set "PathAll_=%PathAll_:~0,-1%"&goto intercept

rem 判断java的相关路径是否在Path环境变量下,如果不在则添加进来

echo %PathAll_%|find /i "%Path_%" && set IsNull=true|| set IsNull=false

if not %IsNull%==true (

reg add "HKEY_LOCAL_MACHINESYSTEMControlSet001ControlSession ManagerEnvironment" /v Path /t REG_EXPAND_SZ /d "%PathAll_%;%Path_%" /f

)

if not %IsNull%==false (echo "Java的bin路径已经在Path环境变量中")

@reg add "HKLMsystemcontrolset001controlsession managerenvironment" /v CLASSPATH /t reg_expand_sz /d "%javaPath%libdt.jar;%javaPath%libtools.jar;." /f

rem 刷新注册表

taskkill /f /im explorer.exe

start explorer.exe

RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters

pause

for,/f,"tokens=1,2,* delims=(Tab)(空格)",%%a,in,('reg query "HKEY_LOCAL_MACHINESYSTEMControlSet001ControlSession ManagerEnvironment" /v Path')     这一句的作用是遍历注册表HKLMSYSTEMControlSet001ControlSession ManagerEnvironment中的Path变量的所有文本,并以Tab+空格做分隔符,取出第1、2和剩余部分,分别存放在a、b、c变量中。如图2-1: 图2-1     因此%%a,代表Path,%%b代表REG_SZ,%%c代表 C:WindowsSystem32;D:Program Files。     必须注意 delims=(Tab)(空格)" ,这里必须是先一个tab后再加空格,不然一定会报错的。     另外注意,因为上面的对Path的分割用的是(Tab)(空格),for语句写成如下: for,/f,"tokens=1,2,3 delims=(Tab)(空格)",%%a,in(略) 这里%%c取得的值将是 “C:WindowsSystem32;D:Program”,原因是Program Files中出现了一个空格。 神说,这里因为delims默认的分隔符是空格和tab键,这个地方注意一下! 参考文献:1. 批处理 字符串去空格实现代码2.批处理常用命令及path路径添加3.批处理应用之设置JAVA环境变量

时间:2019-12-18

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值