一.使用yum命令安装
1.查看是否已安装JDK,卸载
- [root@192 ~]# yum list installed |grep java
- java-1.8.0-openjdk.x86_64 1:1.8.0.121-0.b13.el7_3 @updates
- java-1.8.0-openjdk-headless.x86_64 1:1.8.0.121-0.b13.el7_3 @updates
- javapackages-tools.noarch 3.4.1-11.el7 @base
- python-javapackages.noarch 3.4.1-11.el7 @base
- tzdata-java.noarch 2016j-1.el7 @updates
卸载CentOS系统Java环境
- [root@192 ~]# yum -y remove java-1.8.0-openjdk* *表时卸载所有openjdk相关文件输入
- [root@192 ~]# yum -y remove tzdata-java.noarch 卸载tzdata-java
2.安装JDK
- [root@192 ~]# yum -y list java*
- [root@192 ~]# yum install java-1.8.0-openjdk java-1.8.0-openjdk 安装JDK,如果没有java-1.8.0-openjdk就没有javac命令
也可用 yum install
java-1.8.0-openjdk* 安装所有java1.8.0所有Java程序
直到控制台返回Complete 安装成功.
直到控制台返回Complete 安装成功.
通过yum默认安装的路径为
/usr/lib/jvm
- [root@192 ~]# ls -l /usr/lib/jvm
- total 0
- drwxr-xr-x. 3 root root 17 Feb 9 18:48 java-1.8.0-openjdk-1.8.0.121-0.b13.el7_3.x86_64
- lrwxrwxrwx. 1 root root 21 Feb 9 18:48 jre -> /etc/alternatives/jre
- lrwxrwxrwx. 1 root root 27 Feb 9 18:48 jre-1.8.0 -> /etc/alternatives/jre_1.8.0
- lrwxrwxrwx. 1 root root 35 Feb 9 18:48 jre-1.8.0-openjdk -> /etc/alternatives/jre_1.8.0_openjdk
- lrwxrwxrwx. 1 root root 51 Feb 9 18:48 jre-1.8.0-openjdk-1.8.0.121-0.b13.el7_3.x86_64 -> java-1.8.0-openjdk-1.8.0.121-0.b13.el7_3.x86_64/jre
- lrwxrwxrwx. 1 root root 29 Feb 9 18:48 jre-openjdk -> /etc/alternatives/jre_openjdk
JAVA_HOME
指向一个含有java可执行程序的目录(一般是在
bin/java
中,此目录为/bin/java的上级目录),用cd 命令进入到 jvm下唯一的一个目录中java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64,发现其下目录为 /jre/bin/
java.
jre-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64 这个链接是指向 java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre 这个文件夹
也可以让系统上的所有用户使用java(openjdk),则配置/etc/profile
- [root@192 ~]# vi /etc/profile
在文件最后加入如下行
- #set java environment
- JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64
- PATH=$PATH:$JAVA_HOME/bin
- CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
- export JAVA_HOME CLASSPATH PATH
保存关闭,执行如下命令使设置生效
- [root@192 ~]# source /etc/profile
使用以下命令,查看变量
- [root@192 ~]# echo $JAVA_HOME
- /usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.121-0.b13.el7_3.x86_64
- [root@192 ~]# echo $PATH
- /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.121-0.b13.el7_3.x86_64/bin:/root/bin
- [root@192 ~]# echo $CLASSPATH
- .:/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.121-0.b13.el7_3.x86_64/lib/dt.jar:/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.121-0.b13.el7_3.x86_64/lib/tools.jar
如果机器上同时安装了多个jdk的话,Java链接只能指向一个版本的jdk,为了在全局中方便修改jdk版本,
/etc/alternatives/java 的java链接,指向默认需要执行的版本的jdk的 /bin/java 命令,而 /etc/alternatives/java 又会被软连接到 /usr/bin/java.从而java命令就被设置到了shell环境中,系统会自动寻找/usr/bin路径.这样Java命令不用设置环境变量就可以正常运行了.但对于tomcat或其他软件来说还是要设置环境变量.
- [root@192 ~]# ll /usr/bin/java
- lrwxrwxrwx. 1 root root 22 Feb 9 18:48 /usr/bin/java -> /etc/alternatives/java
- [root@192 ~]# ll /etc/alternatives/java
- lrwxrwxrwx. 1 root root 73 Feb 9 18:48 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.121-0.b13.el7_3.x86_64/jre/bin/java
转载于https://blog.csdn.net/evan_chen_1/article/details/55097252