shell配置java环境变量和批处理配置环境变量
linux配置java环境只需在/etc/profile中添加以下
前提是把jdk解压到/usr/local路径,当然路径可以随便改
-
export JAVA_HOME=/usr/local/jdk1.7.0_79
-
export JAVA_BIN=$JAVA_HOME/bin
-
export PATH=$PATH:$JAVA_BIN
-
export 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 variables
-
-
Base_Path=$(cd `dirname $0`; pwd)
-
echo $Base_Path
-
-
JAVA_HOME=$Base_Path/jdk1.8.0_131
-
echo $JAVA_HOME
-
-
JAVA_BIN=$Base_Path/jdk1.8.0_131/bin
-
echo $JAVA_BIN
-
-
PATH=$PATH:$JAVA_BIN
-
echo $PATH
-
-
CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
-
echo $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 exist
-
grep -q "export JAVA_HOME" /etc/profile
-
if [ $? -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/profile
-
fi
-
echo "Config Java Environment Variables Success"
-
-
#compile file
-
source /etc/profile
-
-
#copy lib .so file to /usr/lib
-
for file in $Base_Path/lib/*
-
do
-
#echo $file
-
if test -f $file && [ "${file##*.}" = "so" ];
-
then
-
echo "copy:"$file
-
cp $file /usr/lib
-
fi
-
done
-
echo "Config .so File Success"
-
#compile .so file
-
ldconfig
-
-
-
#copy config.ini file
-
if [ ! -f "/usr/local/config.ini" ];
-
then
-
cp $Base_Path/lib/config.ini /usr/local
-
echo "cp success"
-
fi
-
-
echo "Config Success"
2、批处理配置环境变量是永久的(必须支持setx 目前win7以上才有setx语句)
-
@echo off
-
set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
-
set basepath=%~dp0
-
echo 当前路径 %basepath%
-
set javahome=%basepath%jdk1.8.0_131
-
echo javahome %javahome%
-
set javalib=%basepath%lib
-
echo javalib %javalib%
-
-
rem LPY
-
echo.
-
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%%\bin
-
echo === 注意: PATH会追加在最后面,
-
echo.
-
set /P EN=请确认后按 回车键 开始设置!
-
echo.
-
echo.
-
echo.
-
echo.
-
-
rem 1:设置JAVA_HOME
-
echo === 新创建环境变量 JAVA_HOME=%javahome%
-
setx "JAVA_HOME" %javahome% -m
-
echo JAVA_HOME %JAVA_HOME%
-
echo.
-
-
-
rem 2:设置classPath
-
echo === 新创建环境变量 classPath=.;%%JAVA_HOME%%\lib;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\lib\tools.jar
-
setx "classPath" ".;%%JAVA_HOME%%\lib;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\lib\tools.jar" -m
-
echo classPath %classPath%
-
echo.
-
-
-
rem 3:设置 CATALINA_HOME
-
rem echo == 新创建环境变量 CATALINA_HOME
-
rem setx "CATALINA_HOME" "%basepath%apache-tomcat-8.0.44" -m
-
-
-
rem 4:设置path
-
echo === 新追加环境变量 PATH=%%JAVA_HOME%%\bin;%%JAVA_HOME%%\jre\bin;
-
echo === 判断是否已设置path
-
rem 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\VM
-
rem 复制配置
-
if not exist C:\Windows\VM\config.ini copy %javalib%\config.ini C:\Windows\VM\
-
-
rem 运行驱动安装
-
%basepath%HASPUserSetup\HASPUserSetup.exe
-
-
echo 环境配置完毕
-
-
echo.
-
rem LPY Zeus http://write.blog.csdn.net/postedit/9822439
-
echo === 请按任意键退出!
-
pause>nul
shell配置java环境变量和批处理配置环境变量的更多相关文章
- WIN7\win10下使用批处理配置JAVA环境变量
我找了很多环境变量批处理的教程,都不太满意,因此综合修改了下,拼凑出了这么一个版本. 下面这个是我主要参考的博客,大部分的代码都是来自这里: http://blog.csdn.net/lpy36543 ...
- CentOS下配置java环境变量classpath
一. 需要配置的环境变量1. PATH环境变量.作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序.我们需要把 jdk安装目录下的bin ...
- linux配置java环境变量(详细)
linux配置java环境变量(详细) 本文完全引用自: http://www.cnblogs.com/samcn/archive/2011/03/16/1986248.html 一. 解压安装jdk ...
- linux配置java环境变量(详细) -copy
一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586.bin 这时会出现一段协议,连继敲回车, ...
- linux配置java环境变量
linux配置java环境变量(详细) 一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586. ...
- centos下配置java环境变量
一. 需要配置的环境变量1. PATH环境变量.作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序.我们需要把 jdk安装目录下的bin ...
- Linux下配置java的环境变量,So Easy!!
首先,在cd /usr ,mkdir java. 将java安装包放到/usr/java,并解压. 验证java. $ java -version 如果提示有如下安装包包含它,但是没有安装.是环境变量 ...
- linux配置java环境变量(详细)【转】
转自:http://www.cnblogs.com/samcn/archive/2011/03/16/1986248.html 一. 解压安装jdk 在shell终端下进入jdk-6u14-linux ...
- linux配置java环境变量(转)
linux配置java环境变量(详细) 一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586. ...
随机推荐
- hibernate 注解配置<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/X
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- CodeVs——T 3305 水果姐逛水果街Ⅱ
http://codevs.cn/problem/3305/ 时间限制: 2 s 空间限制: 256000 KB 题目等级 : 钻石 Diamond 题解 查看运行结果 题目描述 De ...
- 洛谷 P2693 [USACO1.3]号码锁 Combination Lock
P2693 [USACO1.3]号码锁 Combination Lock 题目描述 农夫约翰的奶牛不停地从他的农场中逃出来,导致了很多损害.为了防止它们再逃出来,他买了一只很大的号码锁以防止奶牛们打开 ...
- C# mongodb帮助类
这是在C#连接MongoDB的帮助类,所使用的驱动是在Vs2015的Nuget管理器中下载的mongodb驱动. 下载第一个,会自动下载下面的两个,不要删除. 在配置文件中配置连接字符串connStr ...
- postman--基本使用1
本文转自:http://blog.csdn.net/five3/article/details/53021084 HTTP的接口测试工具有很多,可以进行http请求的方式也有很多,但是可以直接拿来就用 ...
- UIBarButtonItem使用
1 self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBar ...
- android Fragment与Activity交互,互相发数据(附图具体解释)
笔者最近看官方training.发现了非常多实用又好玩的知识. 当中.fragment与Activity通信就是一个. fragment与Activity通信主要是两点: 1.fragment传递信息 ...
- js进阶 12-8 如何知道上一个函数的返回值是什么(如何判断上一个函数是否执行成功)
js进阶 12-8 如何知道上一个函数的返回值是什么(如何判断上一个函数是否执行成功) 一.总结 一句话总结:event的result属性即可. 1.event的result属性的实际应用场景是什么? ...
- [Angular2 Animation] Delay and Ease Angular 2 Animations
By default, transitions will appear linearly over time, but proper animations have a bit more custom ...
- node-sass的安装问题
1.认识node-sass 我觉得要解决node-sass的问题,你首先至少要简单的了解node-sass是个什么东西?为什么要安装它? 对于在项目中使用sass的语法的时候,需要通过sass-loa ...