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

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


  1. export JAVA_HOME=/usr/local/jdk1.7.0_79
  2. export JAVA_BIN=$JAVA_HOME/bin
  3. export PATH=$PATH:$JAVA_BIN
  4. 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时定义这个变量的一个拷贝。这个过程称之为变量输出。


  1. #!/bin/bash
  2. #java environment variables
  3. Base_Path=$(cd `dirname $0`; pwd)
  4. echo $Base_Path
  5. JAVA_HOME=$Base_Path/jdk1.8.0_131
  6. echo $JAVA_HOME
  7. JAVA_BIN=$Base_Path/jdk1.8.0_131/bin
  8. echo $JAVA_BIN
  9. PATH=$PATH:$JAVA_BIN
  10. echo $PATH
  11. CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  12. echo $CLASSPATH
  13. #cancel LD_LIBRARY_PATH define
  14. #LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$Base_Path/lib
  15. #echo $LD_LIBRARY_PATH
  16. #write java environment variables to /etc/profile if not exist
  17. grep -q "export JAVA_HOME" /etc/profile
  18. if [ $? -ne 0 ]; then
  19. echo "java environment variables not exist,starting define it"
  20. echo "export JAVA_HOME="$JAVA_HOME>>/etc/profile
  21. echo "export JAVA_BIN="$JAVA_BIN>>/etc/profile
  22. echo "export PATH=\$PATH:\$JAVA_BIN">>/etc/profile
  23. echo "export CLASSPATH="\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar>>/etc/profile
  24. #echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:$Base_Path/lib">>/etc/profile
  25. fi
  26. echo "Config Java Environment Variables Success"
  27. #compile file
  28. source /etc/profile
  29. #copy lib .so file to /usr/lib
  30. for file in $Base_Path/lib/*
  31. do
  32. #echo $file
  33. if test -f $file && [ "${file##*.}" = "so" ];
  34. then
  35. echo "copy:"$file
  36. cp $file /usr/lib
  37. fi
  38. done
  39. echo "Config .so File Success"
  40. #compile .so file
  41. ldconfig
  42. #copy config.ini file
  43. if [ ! -f "/usr/local/config.ini" ];
  44. then
  45. cp $Base_Path/lib/config.ini /usr/local
  46. echo "cp success"
  47. fi
  48. echo "Config Success"

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


  1. @echo off
  2. set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
  3. set basepath=%~dp0
  4. echo 当前路径 %basepath%
  5. set javahome=%basepath%jdk1.8.0_131
  6. echo javahome %javahome%
  7. set javalib=%basepath%lib
  8. echo javalib %javalib%
  9. rem LPY
  10. echo.
  11. echo ************************************************************
  12. echo * *
  13. echo * JDK 系统环境变量设置 *
  14. echo * *
  15. echo ************************************************************
  16. echo.
  17. echo === 准备设置环境变量: JAVA_HOME=%javahome%
  18. echo === 注意: 如果JAVA_HOME存在,会被覆盖,此操作不可逆的,请仔细检查确认!! ===
  19. echo.
  20. echo === 准备设置环境变量: classPath=%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%\lib\dt.jar;.
  21. echo === 注意: 如果classPath存在,会被覆盖,此操作不可逆的,请仔细检查确认!! ===
  22. echo.
  23. echo === 准备设置环境变量: PATH=%%JAVA_HOME%%\bin
  24. echo === 注意: PATH会追加在最后面,
  25. echo.
  26. set /P EN=请确认后按 回车键 开始设置!
  27. echo.
  28. echo.
  29. echo.
  30. echo.
  31. rem 1:设置JAVA_HOME
  32. echo === 新创建环境变量 JAVA_HOME=%javahome%
  33. setx "JAVA_HOME" %javahome% -m
  34. echo JAVA_HOME %JAVA_HOME%
  35. echo.
  36. rem 2:设置classPath
  37. echo === 新创建环境变量 classPath=.;%%JAVA_HOME%%\lib;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\lib\tools.jar
  38. setx "classPath" ".;%%JAVA_HOME%%\lib;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\lib\tools.jar" -m
  39. echo classPath %classPath%
  40. echo.
  41. rem 3:设置 CATALINA_HOME
  42. rem echo == 新创建环境变量 CATALINA_HOME
  43. rem setx "CATALINA_HOME" "%basepath%apache-tomcat-8.0.44" -m
  44. rem 4:设置path
  45. echo === 新追加环境变量 PATH=%%JAVA_HOME%%\bin;%%JAVA_HOME%%\jre\bin;
  46. echo === 判断是否已设置path
  47. rem findstr 查找path是否存在字符串
  48. echo %path% | findstr /c:"%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;%javalib%"
  49. if errorlevel 1 (
  50. rem 找不到
  51. echo ===path未设置环境变量,追加环境变量
  52. setx path "%path%;%%JAVA_HOME%%\bin;%%JAVA_HOME%%\jre\bin;%javalib%" -m
  53. ) else (
  54. rem 找到
  55. echo ===path已设置环境变量,跳过设置
  56. )
  57. echo %path%
  58. rem 创建文件夹
  59. if not exist C:\Windows\VM md C:\Windows\VM
  60. rem 复制配置
  61. if not exist C:\Windows\VM\config.ini copy %javalib%\config.ini C:\Windows\VM\
  62. rem 运行驱动安装
  63. %basepath%HASPUserSetup\HASPUserSetup.exe
  64. echo 环境配置完毕
  65. echo.
  66. rem LPY Zeus http://write.blog.csdn.net/postedit/9822439
  67. echo === 请按任意键退出!
  68. pause>nul

shell配置java环境变量和批处理配置环境变量的更多相关文章

  1. WIN7\win10下使用批处理配置JAVA环境变量

    我找了很多环境变量批处理的教程,都不太满意,因此综合修改了下,拼凑出了这么一个版本. 下面这个是我主要参考的博客,大部分的代码都是来自这里: http://blog.csdn.net/lpy36543 ...

  2. CentOS下配置java环境变量classpath

    一. 需要配置的环境变量1. PATH环境变量.作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序.我们需要把 jdk安装目录下的bin ...

  3. linux配置java环境变量(详细)

    linux配置java环境变量(详细) 本文完全引用自: http://www.cnblogs.com/samcn/archive/2011/03/16/1986248.html 一. 解压安装jdk ...

  4. linux配置java环境变量(详细) -copy

    一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586.bin 这时会出现一段协议,连继敲回车, ...

  5. linux配置java环境变量

    linux配置java环境变量(详细) 一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586. ...

  6. centos下配置java环境变量

    一. 需要配置的环境变量1. PATH环境变量.作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序.我们需要把 jdk安装目录下的bin ...

  7. Linux下配置java的环境变量,So Easy!!

    首先,在cd /usr ,mkdir java. 将java安装包放到/usr/java,并解压. 验证java. $ java -version 如果提示有如下安装包包含它,但是没有安装.是环境变量 ...

  8. linux配置java环境变量(详细)【转】

    转自:http://www.cnblogs.com/samcn/archive/2011/03/16/1986248.html 一. 解压安装jdk 在shell终端下进入jdk-6u14-linux ...

  9. linux配置java环境变量(转)

    linux配置java环境变量(详细) 一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586. ...

随机推荐

  1. 【AtCoder Beginner Contest 074 D】Restoring Road Network

    [链接]h在这里写链接 [题意] 给你任意两点之间的最短路. 让你求出原图. 或者输出原图不存在. 输出原图的边长总和的最小值. [题解] floyd算法. 先在原有的矩阵上. 做一遍floyd. 如 ...

  2. stm32的串口中断

    下面有很多问题没有验证: 在设置USART_CR1中的TE位时,会发送一个空闲帧作为第一次数据发送, 目前我所了解的串口中断发送,有两种方式: 一个是:TC 一个是:TXE 这是判断两个标志位, 第一 ...

  3. [Ramda] Complement: Logic opposite function

    Take a function as arguement, and the function only return true of false. If the function 'f' return ...

  4. C++ 宏、范型和RTTI 浅析

    [摘要]        RTTI(Run-Time Type Identification)是面向对象程序设计中一种重要的技术. 现行的C++标准对RTTI已经有了明白的支持. 只是在某些情况下出于特 ...

  5. stm32的ADC外设地址设置算法

    摘自:https://wenku.baidu.com/view/e3ce2a215901020207409c15.html### /////////////////////////////////// ...

  6. MacBook Touch Bar 使用技巧

    MacBook Touch Bar 使用技巧 使用Clock Bar再Touch Bar上显示时间 在全屏显示的情况下无法看到时间,于是就想在Touch Bar上是否可以显示时间呢,系统好像没有相应的 ...

  7. 24、vb2_buffer和videobuf_buffer比较分析

    看韦东山视频第三期摄像头驱动中构造了自己的vivi驱动,但是使用的videoBuf结构体,新的版本用的是vb2_buffer结构,我机器上(ubuntu12.04)使用的内核是linux3.2,看了看 ...

  8. embed-it_Integrator memory compile工具使用之三

    embed-it_Integrator memory compile工具使用之三 主要内容 分析使用脚本生成integrator识别的memory名字 主要资料 文档资料 memory限制参数 参考资 ...

  9. word多出空标题,样式是列出段落 - -显示时,选择不勾选“隐藏文字”

    word多出空标题,样式是列出段落

  10. NET使用ABP框架搭建项目

    NET使用ABP框架搭建博客项目(一) 有很多学NET开发的小伙伴建项目都比较茫然,我用什么开发?我都使用什么框架?我怎么起名字?种种问题,让一些低等.中等的工程师(甚至是高级工程师)很烦躁. 推荐一 ...