CentOS7 下rpm安装jdk1.8

简介: CentOS7 下rpm安装jdk1.8

【1】查看并卸载自带的openjdk

查看系统中默认安装的jdk:

rpm -qa|grep jdk
java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64
copy-jdk-configs-3.3-10.el7_5.noarch
java-1.7.0-openjdk-headless-1.7.0.261-2.6.22.2.el7_8.x86_64
java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64
java-1.7.0-openjdk-1.7.0.261-2.6.22.2.el7_8.x86_64

卸载JDK相关文件:

yum -y remove java-1.7.0-openjdk*
yum -y remove java-1.8.0-openjdk*

“*”表示卸载掉java 1.7.0的所有openjdk相关文件。

或者如下卸载jdk:

yum -y remove java-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.x86_64

【2】下载并安装jdk1.8.0_144

去官网下载rpm包:

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


或者直接使用wget命令在linux服务器上下载:

 wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.rpm

安装rpm包:

rpm -ivh jdk-8u144-linux-x64.rpm

aHR0cDovL2ltZy5ibG9nLmNzZG4ubmV0LzIwMTcwOTI5MTQyMjU1Mjcw.png


查看系统默认java版本

java -version


aHR0cDovL2ltZy5ibG9nLmNzZG4ubmV0LzIwMTcwOTI5MTQyMzM4NDMz.png


或者如下(另外一个环境的配置实例非本文):

export JAVA_HOME=/usr/java/jdk1.8.0_144
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

保存退出,使其生效:

source /etc/profile


使用java -version 和 javac检测如下:


【3】为什么要卸载openjdk


关于JDK和OpenJDK的区别,可以归纳为以下几点:


Oracle JDK版本将每三年发布一次,而OpenJDK版本每三个月发布一 次;

OpenJDK 是一个参考模型并且是完全开源的,而Oracle JDK是 OpenJDK的一个实现,并不是完全开源的;

Oracle JDK 比 OpenJDK 更稳定。OpenJDK和Oracle JDK的代码几乎 相同,但Oracle JDK有更多的类和一些错误修复。因此,如果您想开发企 业/商业软件,我建议您选择Oracle JDK,因为它经过了彻底的测试和稳 定。某些情况下,有些人提到在使用OpenJDK 可能会遇到了许多应用程 序崩溃的问题,但是,只需切换到Oracle JDK就可以解决问题;

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

Oracle JDK不会为即将发布的版本提供长期支持,用户每次都必须通过 更新到最新版本获得支持来获取最新版本;

Oracle JDK根据二进制代码许可协议获得许可,而OpenJDK根据GPL v2许可获得许可。

① 授权协议的不同


openjdk采用GPL V2协议放出,而JDK则采用JRL放出。两者协议虽然都是开放源代码的,但是在使用上的不同在于GPL V2允许在商业上使用,而JRL只允许个人研究使用。


② OpenJDK不包含Deployment(部署)功能


部署的功能包括:Browser Plugin、Java Web Start、以及Java控制面板,这些功能在Openjdk中是找不到的。


③ OpenJDK源代码不完整


这个很容易想到,在采用GPL协议的Openjdk中,sun jdk的一部分源代码因为产权的问题无法开放openjdk使用,其中最主要的部份就是JMX中的可选元件SNMP部份的代码。因此这些不能开放的源代码将它作成plug,以供OpenJDK编译时使用,你也可以选择不要使用plug。而Icedtea则为这些不完整的部分开发了相同功能的源代码(OpenJDK6),促使OpenJDK更加完整。


④ 部分源代码用开源代码替换


由于产权的问题,很多产权不是SUN的源代码被替换成一些功能相同的开源代码,比如说字体栅格化引擎,使用Free Type代替。


⑤ openjdk只包含最精简的JDK


OpenJDK不包含其他的软件包,比如Rhino Java DB JAXP……,并且可以分离的软件包也都是尽量的分离,但是这大多数都是自由软件,你可以自己下载加入。


⑥ 不能使用Java商标


这个很容易理解,在安装openjdk的机器上,输入“java -version”显示的是openjdk,但是如果是使用Icedtea补丁的openjdk,显示的是java。(未验证)


总之,在Java体系中,还是有很多不自由的成分,源代码的开发不够彻底,希望Oracle能够让JCP更自由开放一些,这也是所有Java社区所希望的。


【4】yum安装openjdk

通常如果不做特殊要求,可以使用openjdk。

① 检测是否安装

[root@pan remote]# rpm -qa|grep jdk
或者
[root@pan remote]# yum list installed | grep jdk

② 检测可安装版本并安装

yum search java | grep -i --color jdk


20190921202136758.png


③ 安装jdk1.8

yum install -y java-1.8.0-openjdk.x86_64

④ 查看安装结果


20190921202451305.png

目录
相关文章
|
14小时前
|
前端开发 jenkins 持续交付
新的centos7.9安装docker版本的jenkins2.436.1最新版本-前端项目发布(五)
新的centos7.9安装docker版本的jenkins2.436.1最新版本-前端项目发布(五)
17 1
|
14小时前
|
jenkins 网络安全 持续交付
新的centos7.9安装docker版本的jenkins2.436.1最新版本-后端项目发布(四)
新的centos7.9安装docker版本的jenkins2.436.1最新版本-后端项目发布(四)
13 3
|
14小时前
|
网络协议 Linux Docker
在centos7下通过docker 安装onlyoffice
在centos7下通过docker 安装onlyoffice
17 0
|
14小时前
|
NoSQL Linux Redis
在CentOS上安装和配置Redis
在CentOS上安装和配置Redis
21 0
|
14小时前
|
安全 Linux 测试技术
在CentOS上安装Elasticsearch和Kibana
在CentOS上安装Elasticsearch和Kibana
8 0
|
14小时前
|
运维 Kubernetes 监控
本地CentOS安装轻量级容器PaaS平台KubeSphere并实现无公网IP远程访问
本地CentOS安装轻量级容器PaaS平台KubeSphere并实现无公网IP远程访问
4 0
|
14小时前
|
Kubernetes Docker 容器
Docker 安装 Portainer
Portainer Community Edition是一个针对容器化应用程序的轻量级服务交付平台,可用于管理 Docker、Swarm、Kubernetes 和 ACI 环境。它的设计理念是部署和使用都简单,该应用程序允许您通过“智能”GUI 和/或广泛的 API 管理所有编排器资源。
40 3
|
14小时前
|
Java 开发工具 git
新的centos7.9安装docker版本的jenkins2.436.1最新版本-项目发布(三)
新的centos7.9安装docker版本的jenkins2.436.1最新版本-项目发布(三)
11 4
|
14小时前
|
Oracle jenkins 持续交付
新的centos7.9安装jenkins(二)
新的centos7.9安装jenkins(二)
|
14小时前
|
jenkins Java 持续交付
新的centos7.9安装jenkins—(一)
新的centos7.9安装jenkins—(一)
13 0