登录后台

页面导航

本文编写于 2319 天前,最后修改于 1133 天前,其中某些信息可能已经过时。

OpenJDK 与 Oracle JDK

历史上的原因是,OpenJDK是JDK的开放原始码版本,以GPL(General Public License)协议的形式放出(题主提到的open就是指的开源)。在JDK7的时候,OpenJDK已经作为JDK7的主干开发,SUN JDK7是在OpenJDK7的基础上发布的,其大部分原始码都相同,只有少部分原始码被替换掉。使用JRL(JavaResearch License,Java研究授权协议)发布。至于OpenJDK6则更是有其复杂的一面,首先是OpenJDK6是JDK7的一个分支,并且尽量去除Java SE7的新特性,使其尽量的符合Java6的标准。

其中OpenJDK由于授权协议不同,所以CentOS等开源系统中软件源都是OpendJDK。而OpenJDK与Orcle JDK 主要不同的地方在于OpenJDK是精简的的JDK,部分代码不完整。所以为了在部署JAVA应用时,会重新安装Oracle JDK。

卸载CentOS 7 自带的JDK

可以通过下面的管道组合命令来查询当前系统已经安装好的Java版本

rpm -qa | grep java

然后通过 rpm 命令来进行卸载

rpm -e --nodeps java-1.8.0-openjdk-1.8.0.45-9.3.x86_64

全部删除之后,再次使用之前的管道组合命令查询是否已经完全卸载

rpm -qa | grep java

JRE下载

然后去Oracle官网下载JRE,因为是服务器上使用,可以下载 Server JRE
下载完成之后,将下载好的 server-jre-8u152-linux-x64.tar.gz 复制到 /usr/local/java (也可以放到其他目录)

JRE解压及JRE配置

使用 tar 命令进行解压

tar -zxvf server-jre-8u152-linux-x64.tar.gz

解压完成后就可以删除JDK文件

rm -f server-jre-8u152-linux-x64.tar.gz

修改环境变量 /etc/profile 在文件尾部添加以下内容

export JAVA_HOME=/usr/local/java/jre1.8.0_152
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

保存之后,使用 source 命令来让系统更新环境变量

source /etc/profile

使用 java -version 来查看Java版本

java -version

java version "1.8.0_152"
Java(TM) SE Runtime Environment (build 1.8.0_152-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.152-b12, mixed mode)

已有 2 条评论