shell配置java环境变量和批处理配置环境变量

来源:互联网 发布:java多线程网络编程 编辑:程序博客网 时间:2024/06/03 17:03

linux配置java环境只需在/etc/profile中添加以下

前提是把jdk解压到/usr/local路径,当然路径可以随便改

export JAVA_HOME=/usr/local/jdk1.8.0_131export JAVA_BIN=/usr/local/jdk1.8.0_131/binexport PATH=$PATH:$JAVA_BINexport CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
添加完毕后,执行

source /etc/profile
重新运行,使配置生效


以下是配置java环境的shell和window上的批处理

运行shell的前提是,shell必须跟jdk在同一目录下


1、shell里面配置的环境变量,并且export变量,则新建每一个shell都能利用这些变量。(环境变量定义在/etc/profile中,则每次开机后,环境变量都export一次,即可用于系统任意地方)

在shell脚本程序中定义了一个变量,当该脚本程序运行时,这个定义的变量只是该脚本程序内的一个局部变量,其他的shell不能引用它,要使某个变量的值可以在其他shell中被改变,可以使用export命令对已定义的变量进行输出。export命令将使系统在创建每一个新的shell时定义这个变量的一个拷贝。这个过程称之为变量输出。

#!/bin/bash#java environment variablesBase_Path=$(cd `dirname $0`; pwd)echo $Base_PathJAVA_HOME=$Base_Path/jdk1.8.0_131echo $JAVA_HOMEJAVA_BIN=$Base_Path/jdk1.8.0_131/binecho $JAVA_BINPATH=$PATH:$JAVA_BINecho $PATHCLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarecho $CLASSPATH#cancel LD_LIBRARY_PATH define#LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$Base_Path/lib#echo $LD_LIBRARY_PATH#write java environment variables to /etc/profile  if not existgrep -q "export JAVA_HOME" /etc/profileif [ $? -ne 0 ]; then    echo "java environment variables not exist,starting define it"    echo "export JAVA_HOME="$JAVA_HOME>>/etc/profile    echo "export JAVA_BIN="$JAVA_BIN>>/etc/profile    echo "export PATH=\$PATH:\$JAVA_BIN">>/etc/profile    echo "export CLASSPATH="\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar>>/etc/profile    #echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:$Base_Path/lib">>/etc/profilefiecho "Config Java Environment Variables Success"#compile filesource /etc/profile#copy lib .so file to /usr/libfor file in $Base_Path/lib/*do        #echo $file        if test -f $file && [ "${file##*.}" = "so" ];        then                echo "copy:"$file                cp $file /usr/lib         fidoneecho "Config .so File Success"#compile .so fileldconfig#copy config.ini fileif [ ! -f "/usr/local/config.ini" ]; thencp $Base_Path/lib/config.ini /usr/localecho "cp success"fiecho "Config Success"


2、批处理配置环境变量是永久的(必须支持setx   目前win7以上才有setx语句)

@echo offset regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environmentset basepath=%~dp0echo 当前路径 %basepath%set javahome=%basepath%jdk1.8.0_131echo javahome %javahome%set javalib=%basepath%libecho javalib %javalib%rem LPYecho.echo ************************************************************echo *                                                          *echo *                   JDK 系统环境变量设置                   *echo *                                                          *echo ************************************************************echo.echo === 准备设置环境变量: JAVA_HOME=%javahome%echo === 注意: 如果JAVA_HOME存在,会被覆盖,此操作不可逆的,请仔细检查确认!! ===echo.echo === 准备设置环境变量: classPath=%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%\lib\dt.jar;.echo === 注意: 如果classPath存在,会被覆盖,此操作不可逆的,请仔细检查确认!! ===echo.echo === 准备设置环境变量: PATH=%%JAVA_HOME%%\binecho === 注意: PATH会追加在最后面,echo.set /P EN=请确认后按 回车键 开始设置!echo.echo.echo.echo.rem 1:设置JAVA_HOMEecho === 新创建环境变量 JAVA_HOME=%javahome%setx "JAVA_HOME" %javahome% -mecho JAVA_HOME %JAVA_HOME%echo.rem 2:设置classPathecho === 新创建环境变量 classPath=.;%%JAVA_HOME%%\lib;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\lib\tools.jarsetx "classPath" ".;%%JAVA_HOME%%\lib;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\lib\tools.jar" -mecho classPath %classPath%echo.rem 3:设置 CATALINA_HOMErem echo == 新创建环境变量 CATALINA_HOMErem setx "CATALINA_HOME" "%basepath%apache-tomcat-8.0.44" -mrem 4:设置pathecho === 新追加环境变量 PATH=%%JAVA_HOME%%\bin;%%JAVA_HOME%%\jre\bin;echo === 判断是否已设置pathrem findstr 查找path是否存在字符串echo %path% | findstr /c:"%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;%javalib%"  if errorlevel 1 (rem 找不到echo ===path未设置环境变量,追加环境变量setx path "%path%;%%JAVA_HOME%%\bin;%%JAVA_HOME%%\jre\bin;%javalib%" -m) else (rem 找到echo ===path已设置环境变量,跳过设置)echo %path%rem 创建文件夹if not exist C:\Windows\VM md C:\Windows\VMrem 复制配置if not exist C:\Windows\VM\config.ini copy %javalib%\config.ini C:\Windows\VM\rem 运行驱动安装%basepath%HASPUserSetup\HASPUserSetup.exeecho 环境配置完毕echo.rem LPY Zeus http://write.blog.csdn.net/postedit/9822439echo === 请按任意键退出! pause>nul