引言
Oracle JDK和OpenJDK的简单介绍
Oracle JDK是基于Java标准版规范实现的,以二进制产品的形式发布。它支持多种操作系统,如Windows,Linux,Solaris,MacOS等。它支持不同的平台,如Intel32位和64位架构,ARM架构和SPARC。它完全基于Java编程语言。之后,该许可证宣布将根据GPL(通用公共许可证)许可证发布。Oracle JDK包含许多组件作为库形式的编程工具集合。
OpenJDK是Java SE平台版的开源和免费实现,它是使用C++和Java编程语言编写的。它支持不同的操作系统,如FreeBSD,Linux,Microsoft Windows,Mac OS X。
两者区别与联系:
协议不同:Oracle JDK根据Oracle二进制代码许可协议获得许可,而OpenJDK具有GNU通用公共许可证(GNU GPL)版本2。

Oracle JDK具有Flight Recorder功能,Open JDK具有Font Renderer功能。

Oracle JDK具有良好的GC选项和更好的渲染器,而OpenJDK具有更少的GC选项,并且由于其包含自己的渲染器的分布,因此具有较慢的图形渲染器选项。

在响应性和JVM性能方面,Oracle JDK与OpenJDK相比提供了更好的性能。

Oracle JDK支持Windows,Linux,Solaris,MacOS等操作系统;而OpenJDK支持FreeBSD,Linux,Microsoft Windows,Mac OS X等操作系统。

Oracle JDK版本将每三年发布一次,Oracle为其版本提供长期支持。而,OpenJDK版本每三个月发布一次,且仅支持对发布的更改,直到下一个版本发布。

因此由于centos7中自带openjdk,但是对于搭建Hadoop生态系统一套时,使用Oracle版jdk更为通用。

查询现有jdk版本号

[usrname@master conf]$ rpm -qa | grep jdk
jdk1..0_144-1.8.0_144-fcs.x86_64

查看jdk安装路径
自带jdk版本:

[root@cdh03 ~]# which java
/usr/bin/java
[root@cdh03 ~]# ls -lrt /usr/bin/java
-rwxr-xr-x. root root Jan /usr/bin/java -> /etc/alternatives/java
[root@cdh03 ~]# ls -lrt /etc/alternatives/java
-rwxr-xr-x. root root Jan /etc/alternatives/java -> /usr/lib/jvm/java-1.8.-openjdk-1.8.0.121-.b10.el7_5.x86_64/jre/bin/java

Oracle jdk安装版本

[root@cdh03 ~]# which java
/usr/java/jdk1..0_181-cloudera/bin/java
[root@cdh03 ~]# ls -lrt /usr/java/jdk1..0_181-cloudera/bin/java
-rwxr-xr-x. root root Jan /usr/java/jdk1..0_181-cloudera/bin/java

卸载自带openjdk

[root@cdh03 ~]# yum -y remove java-1.8.-openjdk-1.8.0.121-.b10.el7_5.x86_64

出现Complete! 成功

如不成功尝试:

rpm -e --nodeps java-1.8.-openjdk-1.8.0.121-.b10.el7_5.x86_64

开始安装
1. 下载jdk
进入 Oracle 版jdk下载地址 下载合适的 JDK 版本,准备安装。

2.创建java目录
1、在/usr/目录下创建java目录
mkdir /usr/java
2、将下载的jdk传入至/usr/java/目录下,并解压
tar -zxvf jdk-1.8.0_144-fcs.x86_64-.tar.gz

3. 设置环境变量
两种方式:
1、修改/etc/profile
2、修改~/.bashrc

export JAVA_HOME=/usr/java/jdk1..0_144
export PATH=$PATH:$JAVA_HOME/bin

⚠️保存配置,让其生效:

source /etc/profile || source ~/.bashrc

. 测试
[username@java1 ~]$ java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) -Bit Server VM (build 25.144-b01, mixed mode)

安装完成!!!

原文链接:https://blog.csdn.net/sonia_liss/article/details/95347127

CentOS7安装jdk教程的更多相关文章

  1. Centos7 安装 jdk 1.8

    Centos7 安装 jdk 1.8 1.下载安装包 链接: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloa ...

  2. centos7命令行和图形界面的相互切换(附centos7安装配置教程)

    一.最近安装了centos7,发现在命令行和图形界面的相互切换命令上,与centos以往版本有很大不同,先整理如下,加深记忆. 1,centos7默认安装后,跟其他版本一样,启动默认进入图形界面: 2 ...

  3. Centos7 安装jdk,MySQL

    报名立减200元.暑假直降6888. 邀请链接:http://www.jnshu.com/login/1/20535344 邀请码:20535344 学习阿里云平台的云服务器配置Java开发环境.我现 ...

  4. centos7安装jdk,tomcat,msyql(MariaDB)

    操作系统版本 CentOS Linux release 7.2.1511 (Core) 安装jdk 下载jdk-8u66-linux-x64.rpm上传到linux上 先改用户权限 然后 rpm -i ...

  5. Centos7安装JDK+部署Tomcat8

    Centos7下JDK+Tomcat的部署: 1.安装JDK 1.1 通过以下命令获得java JDK列表 yum -y list java* 1.2 通过yum安装JDK yum -y instal ...

  6. Centos7安装JDK环境配置

    作为一名程序员,各种环境搭建都要会. 下面介绍关于Linux操作系统之centos7(64位)安装JDK以及环境配置. 下面开始学习吧 查看并卸载CentOS自带的OpenJDK 安装好的CentOS ...

  7. centos7安装JDK、CentOS

    1.安装JDK 1.1查看系统是否已有自带的JDK rpm -qa |grep java rpm -qa |grep jdk rpm -qa |grep gcj 1.2卸载已有安装 如果没有输出信息, ...

  8. CentOS7 安装JDK

    链接地址:http://jingyan.baidu.com/article/c74d60007b85510f6a595dfa.html VMware 10 centos 安装jdk 及mysql 方法 ...

  9. liunx centOS6.5安装jdk教程

    第一步:mkdir /usr/java/ --在/usr目录下新建一个java目录 第二步:cp jdk-7u25-linux-x64.rpm /usr/java/ --将JDK文件复制到/usr/j ...

随机推荐

  1. 解决Oracle ORA-01033: ORACLE initialization or shutdown in progress错误 和 ORA-01589错误 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项

    要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项 SQL> startupORACLE 例程已经启动. Total System Global Area  13533 ...

  2. lamda表达式的两种写法

    public class Test{ public synchronized void test1(){ System.out.println("test1 start........... ...

  3. HDU2020——绝对值排序(java实现,使用map)

    Question Description Input Output Sample Input Sample Output 解题思路简述: 在接收每一个数组的过程中,将负数及其绝对值以键值对的形式存入m ...

  4. 比较一下数据结构的链表和linux i2c驱动难度比较

  5. linq和扩展方法

    c#的扩展方法 1.必须是在一个非嵌套.非泛型的静态类中的静态方法 2.至少一个参数,第一个参数附加this,不能有其他修饰符如out.ref 3.第一个参数不能是指针类型 上面例子是自定义的一个扩展 ...

  6. js或者jq的string类型或者number类型的相互转换及json对象与字符串的转换

    1.将值乘以1,将string类型转为number类型 //算合计价值function summoney(money) { var zijin = $("#main_xm_dam09&quo ...

  7. 文件分割合并DOS版

    这个从163邮箱里翻出来的程序,2004年的修改日期,放这另存一下. 当时拿了一本C++的书来学,学了一阵就琢磨着做一个东东,然后就想起一个以前印象深刻的软件,叫做笨笨狗分割器. 当时主要还是靠3.5 ...

  8. mybatis(六):设计模式 - 适配器模式

  9. Python(三):环境及其配置

    一,PYTHONPATH 默认的Python模块搜索路径,可以将路径指向anaconda3,需要开发者自己设置 二,PYTHONHASHSEED 如果该环境变量被设定为 random ,相当于 -R ...

  10. SpringBean的生命周期以及循环依赖过程

    上面就是springBean的大致生命周期. Bean的创建过程 创建Bean之前会调用Bean工厂的后置处理器,可以获取到BeanDefinition Bean的初始化过程 初始化之前会调用前置处理 ...