1、先查看centos中自帶的jdk並卸載
[root@root ~]# rpm -qa | grep java //查看
tzdata-java-2016c-1.el6.noarch
java-1.6.0-openjdk-1.6.0.38-1.13.10.4.el6.x86_64
java-1.7.0-openjdk-1.7.0.99-2.6.5.1.el6.x86_64
[root@root ~]# rpm -e --allmatches --nodeps java-1.6.0-openjdk-1.6.0.38-1.13.10.4.el6.x86_64 //卸載
[root@root ~]# rpm -e --allmatches --nodeps java-1.7.0-openjdk-1.7.0.99-2.6.5.1.el6.x86_64 //卸載
[root@root ~]# rpm -qa | grep java //再次查看
tzdata-java-2016c-1.el6.noarch
2、yum 命令查找jdk 兩種方法:
//第一種:
[root@root ~]# yum -y list java*
已加載插件:fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
* base: mirrors.neusoft.edu.cn
* extras: mirrors.neusoft.edu.cn
* updates: mirrors.huaweicloud.com
可安裝的軟件包
java-1.5.0-gcj.x86_64 1.5.0.0-29.1.el6 base
java-1.5.0-gcj-devel.x86_64 1.5.0.0-29.1.el6 base
java-1.5.0-gcj-javadoc.x86_64 1.5.0.0-29.1.el6 base
java-1.5.0-gcj-src.x86_64 1.5.0.0-29.1.el6 base
java-1.6.0-openjdk.x86_64 1:1.6.0.41-1.13.13.1.el6_8 base //jdk6
java-1.6.0-openjdk-demo.x86_64 1:1.6.0.41-1.13.13.1.el6_8 base
java-1.6.0-openjdk-devel.x86_64 1:1.6.0.41-1.13.13.1.el6_8 base
java-1.6.0-openjdk-javadoc.x86_64 1:1.6.0.41-1.13.13.1.el6_8 base
java-1.6.0-openjdk-src.x86_64 1:1.6.0.41-1.13.13.1.el6_8 base
java-1.7.0-openjdk.x86_64 1:1.7.0.201-2.6.16.0.el6_10 updates //jdk7
java-1.7.0-openjdk-demo.x86_64 1:1.7.0.201-2.6.16.0.el6_10 updates
java-1.7.0-openjdk-devel.x86_64 1:1.7.0.201-2.6.16.0.el6_10 updates
java-1.7.0-openjdk-javadoc.noarch 1:1.7.0.201-2.6.16.0.el6_10 updates
java-1.7.0-openjdk-src.x86_64 1:1.7.0.201-2.6.16.0.el6_10 updates
java-1.8.0-openjdk.x86_64 1:1.8.0.191.b12-0.el6_10 updates //jdk8
java-1.8.0-openjdk-debug.x86_64 1:1.8.0.191.b12-0.el6_10 updates
java-1.8.0-openjdk-demo.x86_64 1:1.8.0.191.b12-0.el6_10 updates
java-1.8.0-openjdk-demo-debug.x86_64 1:1.8.0.191.b12-0.el6_10 updates
java-1.8.0-openjdk-devel.x86_64 1:1.8.0.191.b12-0.el6_10 updates
java-1.8.0-openjdk-devel-debug.x86_64 1:1.8.0.191.b12-0.el6_10 updates
java-1.8.0-openjdk-headless.x86_64 1:1.8.0.191.b12-0.el6_10 updates
java-1.8.0-openjdk-headless-debug.x86_64 1:1.8.0.191.b12-0.el6_10 updates
java-1.8.0-openjdk-javadoc.noarch 1:1.8.0.191.b12-0.el6_10 updates
java-1.8.0-openjdk-javadoc-debug.noarch 1:1.8.0.191.b12-0.el6_10 updates
java-1.8.0-openjdk-src.x86_64 1:1.8.0.191.b12-0.el6_10 updates
java-1.8.0-openjdk-src-debug.x86_64 1:1.8.0.191.b12-0.el6_10 updates
java_cup.x86_64 1:0.10k-5.el6 base
java_cup-javadoc.x86_64 1:0.10k-5.el6 base
java_cup-manual.x86_64 1:0.10k-5.el6 base
javacc.x86_64 4.1-0.5.el6 base
javacc-demo.x86_64 4.1-0.5.el6 base
javacc-manual.x86_64 4.1-0.5.el6 base
javassist.noarch 3.9.0-6.el6 base
javassist-javadoc.noarch 3.9.0-6.el6 base
//第二種:
[root@root ~]# yum search jdk
已加載插件:fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
* base: mirrors.neusoft.edu.cn
* extras: mirrors.neusoft.edu.cn
* updates: mirrors.huaweicloud.com
===================================== N/S Matched: jdk ======================================
copy-jdk-configs.noarch : JDKs configuration files copier
java-1.6.0-openjdk.x86_64 : OpenJDK Runtime Environment //jdk6
java-1.6.0-openjdk-demo.x86_64 : OpenJDK Demos
java-1.6.0-openjdk-devel.x86_64 : OpenJDK Development Environment
java-1.6.0-openjdk-javadoc.x86_64 : OpenJDK API Documentation
java-1.6.0-openjdk-src.x86_64 : OpenJDK Source Bundle
java-1.7.0-openjdk.x86_64 : OpenJDK Runtime Environment //jdk7
java-1.7.0-openjdk-demo.x86_64 : OpenJDK Demos
java-1.7.0-openjdk-devel.x86_64 : OpenJDK Development Environment
java-1.7.0-openjdk-javadoc.noarch : OpenJDK API Documentation
java-1.7.0-openjdk-src.x86_64 : OpenJDK Source Bundle
java-1.8.0-openjdk.x86_64 : OpenJDK Runtime Environment //jdk8
java-1.8.0-openjdk-debug.x86_64 : OpenJDK Runtime Environment with full debug on
java-1.8.0-openjdk-demo.x86_64 : OpenJDK Demos
java-1.8.0-openjdk-demo-debug.x86_64 : OpenJDK Demos with full debug on
java-1.8.0-openjdk-devel.x86_64 : OpenJDK Development Environment
java-1.8.0-openjdk-devel-debug.x86_64 : OpenJDK Development Environment with full debug on
java-1.8.0-openjdk-headless.x86_64 : OpenJDK Runtime Environment
java-1.8.0-openjdk-headless-debug.x86_64 : OpenJDK Runtime Environment with full debug on
java-1.8.0-openjdk-javadoc.noarch : OpenJDK API Documentation
java-1.8.0-openjdk-javadoc-debug.noarch : OpenJDK API Documentation for packages with debug
: on
java-1.8.0-openjdk-src.x86_64 : OpenJDK Source Bundle
java-1.8.0-openjdk-src-debug.x86_64 : OpenJDK Source Bundle for packages with debug on
ldapjdk-javadoc.x86_64 : Javadoc for ldapjdk
icedtea-web.x86_64 : Additional Java components for OpenJDK - Java browser plug-in and Web
: Start implementation
ldapjdk.x86_64 : The Mozilla LDAP Java SDK
Name and summary matches only, use "search all" for everything.
3、安裝jdk 作者安裝 java-1.8.0-openjdk.x86_64
[root@root ~]# yum install java-1.8.0-openjdk.x86_64
已加載插件:fastestmirror, refresh-packagekit, security
設置安裝進程
Loading mirror speeds from cached hostfile
* base: mirrors.neusoft.edu.cn
* extras: mirrors.neusoft.edu.cn
* updates: mirrors.huaweicloud.com
解決依賴關係
--> 執行事務檢查
---> Package java-1.8.0-openjdk.x86_64 1:1.8.0.191.b12-0.el6_10 will be 安裝
--> 處理依賴關係 java-1.8.0-openjdk-headless = 1:1.8.0.191.b12-0.el6_10,它被軟件包 1:java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64 需要
--> 處理依賴關係 libjvm.so(SUNWprivate_1.1)(64bit),它被軟件包 1:java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64 需要
--> 處理依賴關係 libjli.so(SUNWprivate_1.1)(64bit),它被軟件包 1:java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64 需要
--> 處理依賴關係 libjava.so(SUNWprivate_1.1)(64bit),它被軟件包 1:java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64 需要
--> 處理依賴關係 libjvm.so()(64bit),它被軟件包 1:java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64 需要
--> 處理依賴關係 libjli.so()(64bit),它被軟件包 1:java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64 需要
--> 處理依賴關係 libjava.so()(64bit),它被軟件包 1:java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64 需要
--> 處理依賴關係 libawt.so()(64bit),它被軟件包 1:java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64 需要
--> 執行事務檢查
---> Package java-1.8.0-openjdk-headless.x86_64 1:1.8.0.191.b12-0.el6_10 will be 安裝
--> 處理依賴關係 tzdata-java >= 2014f-1,它被軟件包 1:java-1.8.0-openjdk-headless-1.8.0.191.b12-0.el6_10.x86_64 需要
--> 處理依賴關係 nss >= 3.36.0,它被軟件包 1:java-1.8.0-openjdk-headless-1.8.0.191.b12-0.el6_10.x86_64 需要
--> 執行事務檢查
---> Package nss.x86_64 0:3.21.0-8.el6 will be 升級
--> 處理依賴關係 nss = 3.21.0-8.el6,它被軟件包 nss-sysinit-3.21.0-8.el6.x86_64 需要
--> 處理依賴關係 nss(x86-64) = 3.21.0-8.el6,它被軟件包 nss-tools-3.21.0-8.el6.x86_64 需要
---> Package nss.x86_64 0:3.36.0-9.el6_10 will be an update
--> 處理依賴關係 nss-util >= 3.36.0,它被軟件包 nss-3.36.0-9.el6_10.x86_64 需要
--> 處理依賴關係 nspr >= 4.19.0,它被軟件包 nss-3.36.0-9.el6_10.x86_64 需要
--> 處理依賴關係 libnssutil3.so(NSSUTIL_3.33)(64bit),它被軟件包 nss-3.36.0-9.el6_10.x86_64 需要
--> 處理依賴關係 libnssutil3.so(NSSUTIL_3.31)(64bit),它被軟件包 nss-3.36.0-9.el6_10.x86_64 需要
--> 處理依賴關係 libnssutil3.so(NSSUTIL_3.24)(64bit),它被軟件包 nss-3.36.0-9.el6_10.x86_64 需要
---> Package tzdata-java.noarch 0:2018g-1.el6 will be 安裝
--> 執行事務檢查
---> Package nspr.x86_64 0:4.11.0-1.el6 will be 升級
---> Package nspr.x86_64 0:4.19.0-1.el6 will be an update
---> Package nss-sysinit.x86_64 0:3.21.0-8.el6 will be 升級
---> Package nss-sysinit.x86_64 0:3.36.0-9.el6_10 will be an update
---> Package nss-tools.x86_64 0:3.21.0-8.el6 will be 升級
---> Package nss-tools.x86_64 0:3.36.0-9.el6_10 will be an update
---> Package nss-util.x86_64 0:3.21.0-2.el6 will be 升級
---> Package nss-util.x86_64 0:3.36.0-1.el6 will be an update
--> 完成依賴關係計算
依賴關係解決
=================================================================================================
軟件包 架構 版本 倉庫 大小
=================================================================================================
正在安裝:
java-1.8.0-openjdk x86_64 1:1.8.0.191.b12-0.el6_10 updates 212 k
爲依賴而安裝:
java-1.8.0-openjdk-headless x86_64 1:1.8.0.191.b12-0.el6_10 updates 32 M
tzdata-java noarch 2018g-1.el6 updates 186 k
爲依賴而更新:
nspr x86_64 4.19.0-1.el6 base 114 k
nss x86_64 3.36.0-9.el6_10 updates 865 k
nss-sysinit x86_64 3.36.0-9.el6_10 updates 53 k
nss-tools x86_64 3.36.0-9.el6_10 updates 460 k
nss-util x86_64 3.36.0-1.el6 base 72 k
事務概要
=================================================================================================
Install 3 Package(s)
Upgrade 5 Package(s)
總下載量:34 M
確定嗎?[y/N]:y //確定下載
下載軟件包:
(1/8): java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64.rpm | 212 kB 00:00
(2/8): java-1.8.0-openjdk-headless-1.8.0.191.b12-0.el6_10.x86_64.rpm | 32 MB 00:10
(3/8): nspr-4.19.0-1.el6.x86_64.rpm | 114 kB 00:00
(4/8): nss-3.36.0-9.el6_10.x86_64.rpm | 865 kB 00:00
(5/8): nss-sysinit-3.36.0-9.el6_10.x86_64.rpm | 53 kB 00:00
(6/8): nss-tools-3.36.0-9.el6_10.x86_64.rpm | 460 kB 00:00
(7/8): nss-util-3.36.0-1.el6.x86_64.rpm | 72 kB 00:00
(8/8): tzdata-java-2018g-1.el6.noarch.rpm | 186 kB 00:00
-------------------------------------------------------------------------------------------------
總計 2.6 MB/s | 34 MB 00:13
warning: rpmts_HdrFromFdno: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
Importing GPG key 0xC105B9DE:
Userid : CentOS-6 Key (CentOS 6 Official Signing Key) <[email protected]>
Package: centos-release-6-8.el6.centos.12.3.x86_64 (@anaconda-CentOS-201605220104.x86_64/6.8)
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
確定嗎?[y/N]:y //確定 y
運行 rpm_check_debug
執行事務測試
事務測試成功
執行事務
Warning: RPMDB altered outside of yum.
** Found 1 pre-existing rpmdb problem(s), 'yum check' output follows:
1:libreoffice-ure-4.3.7.2-2.el6.x86_64 has missing requires of libjvm.so()(64bit)
正在升級 : nspr-4.19.0-1.el6.x86_64 1/13
正在升級 : nss-util-3.36.0-1.el6.x86_64 2/13
正在升級 : nss-3.36.0-9.el6_10.x86_64 3/13
正在升級 : nss-sysinit-3.36.0-9.el6_10.x86_64 4/13
正在安裝 : tzdata-java-2018g-1.el6.noarch 5/13
正在安裝 : 1:java-1.8.0-openjdk-headless-1.8.0.191.b12-0.el6_10.x86_64 6/13
正在安裝 : 1:java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64 7/13
正在升級 : nss-tools-3.36.0-9.el6_10.x86_64 8/13
清理 : nss-tools-3.21.0-8.el6.x86_64 9/13
清理 : nss-3.21.0-8.el6.x86_64 10/13
清理 : nss-sysinit-3.21.0-8.el6.x86_64 11/13
清理 : nss-util-3.21.0-2.el6.x86_64 12/13
清理 : nspr-4.11.0-1.el6.x86_64 13/13
Verifying : 1:java-1.8.0-openjdk-headless-1.8.0.191.b12-0.el6_10.x86_64 1/13
Verifying : nss-sysinit-3.36.0-9.el6_10.x86_64 2/13
Verifying : nss-util-3.36.0-1.el6.x86_64 3/13
Verifying : 1:java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64 4/13
Verifying : nss-tools-3.36.0-9.el6_10.x86_64 5/13
Verifying : nspr-4.19.0-1.el6.x86_64 6/13
Verifying : nss-3.36.0-9.el6_10.x86_64 7/13
Verifying : tzdata-java-2018g-1.el6.noarch 8/13
Verifying : nss-util-3.21.0-2.el6.x86_64 9/13
Verifying : nss-3.21.0-8.el6.x86_64 10/13
Verifying : nss-sysinit-3.21.0-8.el6.x86_64 11/13
Verifying : nss-tools-3.21.0-8.el6.x86_64 12/13
Verifying : nspr-4.11.0-1.el6.x86_64 13/13
已安裝:
java-1.8.0-openjdk.x86_64 1:1.8.0.191.b12-0.el6_10
作爲依賴被安裝:
java-1.8.0-openjdk-headless.x86_64 1:1.8.0.191.b12-0.el6_10 tzdata-java.noarch 0:2018g-1.el6
作爲依賴被升級:
nspr.x86_64 0:4.19.0-1.el6 nss.x86_64 0:3.36.0-9.el6_10
nss-sysinit.x86_64 0:3.36.0-9.el6_10 nss-tools.x86_64 0:3.36.0-9.el6_10
nss-util.x86_64 0:3.36.0-1.el6
完畢!
4、檢驗安裝
[root@root ~]# java -version
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
5、yum 命令安裝默認安裝路徑爲 /usr/lib/jvm
//查看安裝路徑
[root@root ~]# cd /usr/lib/jvm
[root@root jvm]# ll
總用量 4
drwxr-xr-x 3 root root 4096 12月 22 11:08 java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64 //這裏
lrwxrwxrwx 1 root root 21 12月 22 11:09 jre -> /etc/alternatives/jre
lrwxrwxrwx 1 root root 27 12月 22 11:09 jre-1.8.0 -> /etc/alternatives/jre_1.8.0
lrwxrwxrwx 1 root root 52 12月 22 11:09 jre-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64 -> java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre
lrwxrwxrwx 1 root root 52 12月 22 11:09 jre-1.8.0-openjdk.x86_64 -> java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre
lrwxrwxrwx 1 root root 29 12月 22 11:09 jre-openjdk -> /etc/alternatives/jre_openjdk
// /etc/alternatives 的目錄下面會有個java鏈接,指向/usr/lib/jvm/jre-1.8.0-openjdk.x86_64/bin/java
[root@root jvm]# cd /etc/alternatives
[root@root alternatives]# ll
總用量 108
……
lrwxrwxrwx 1 root root 46 12月 22 11:09 java -> /usr/lib/jvm/jre-1.8.0-openjdk.x86_64/bin/java
lrwxrwxrwx 1 root root 78 12月 22 11:09 java.1.gz -> /usr/share/man/man1/java-java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64.1.gz
lrwxrwxrwx 1 root root 73 12月 22 11:09 jjs -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/bin/jjs
lrwxrwxrwx 1 root root 77 12月 22 11:09 jjs.1.gz -> /usr/share/man/man1/jjs-java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64.1.gz
lrwxrwxrwx 1 root root 65 12月 22 11:09 jre -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre
lrwxrwxrwx 1 root root 65 12月 22 11:09 jre_1.8.0 -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre
lrwxrwxrwx 1 root root 65 12月 22 11:09 jre_1.8.0_exports -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre
lrwxrwxrwx 1 root root 68 12月 22 11:09 jre_exports -> /usr/lib/jvm-exports/jre-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64
lrwxrwxrwx 1 root root 65 12月 22 11:09 jre_openjdk -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre
lrwxrwxrwx 1 root root 65 12月 22 11:09 jre_openjdk_exports -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre
……
6、設置jdk環境變量
[root@root alternatives]# vim /etc/profile
在文件最後加入如下配置:
#set java environment
JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk.x86_64
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME CLASSPATH PATH
保存退出。
7、使profile文件立馬生效
[root@root alternatives]# . /etc/profile // . 後面有個空格
---------------------