天天看點

CentOS 7 删除自帶的JDK,然後自己安裝想要的版本(★firecat推薦★)

原生的centos 7會自帶jdk,但自帶的openjdk不好用(例如jps終端指令不能用等)。

自帶的路徑在/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64。

我們建議把自帶的删除,用java官網釋出的完整版jdk,網址如下:

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

1、先看看有沒有安裝java -version

[root@java-test-01 ~]# java -version

openjdk version "1.8.0_141"

OpenJDK Runtime Environment (build 1.8.0_141-b16)

OpenJDK 64-Bit Server VM (build 25.141-b16, mixed mode)

2、查找他們的安裝位置(注意不同系統的java版本号會有差異)

[root@java-test-01 ~]# rpm -qa | grep java

java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64

java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64

java-1.8.0-openjdk-headless-1.8.0.141-1.b16.el7_3.x86_64

java-1.7.0-openjdk-headless-1.7.0.141-2.6.10.1.el7_3.x86_64

python-javapackages-3.4.1-11.el7.noarch

javapackages-tools-3.4.1-11.el7.noarch

tzdata-java-2017b-1.el7.noarch

3、删除全部,noarch檔案可以不用删除

[root@java-test-01 ~]# rpm -e --nodeps java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64

[root@java-test-01 ~]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64

[root@java-test-01 ~]# rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.141-1.b16.el7_3.x86_64

[root@java-test-01 ~]# rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.141-2.6.10.1.el7_3.x86_64

4、檢查有沒有删除

-bash: /usr/bin/java: 沒有那個檔案或目錄

如果還沒有删除,則用yum -y remove去删除他們

5、接下來,我們安裝完整版的JDK。

官網下載下傳jdk,jdk-8u172-linux-x64.tar.gz,解壓到路徑/root/Downloads/jdk1.8.0_172

tar -xvf jdk-8u172-linux-x64.tar.gz

6、修改環境變量/etc/profile

export JAVA_HOME=/root/Downloads/jdk1.8.0_172

export JRE_HOME=$JAVA_HOME/jre

export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

#export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export PATH=.:$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

讓配置立即生效

[root@bogon ~]# source /etc/profile

建議重新開機系統使得配置檔案生效是最可靠的。

7、驗證

[root@bogon ~]# java -version

java version "1.8.0_172"

Java(TM) SE Runtime Environment (build 1.8.0_172-b11)

Java HotSpot(TM) 64-Bit Server VM (build 25.172-b11, mixed mode)

[root@bogon ~]# echo $JAVA_HOME

/root/Downloads/jdk1.8.0_172

[root@bogon ~]# echo $PATH

.:/root/Downloads/jdk1.8.0_172/bin:/root/Downloads/jdk1.8.0_172/jre/bin:.:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64/bin:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64/jre/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/root/bin

[root@bogon ~]# javac

Usage: javac <options> <source files>

where possible options include:

----

關于jps終端指令:

jps 是java提供的檢視java程序的工具,比如我用jps指令檢視,正常情況會列出如下資訊:

<程序号1111> …… <程序名A>

<程序号2222> …… <程序名B>

<程序号3333> …… <程序名C>

<程序号4444> …… <Jps>

這時用kill -9 <程序号> 是可以殺掉程序的。