(1).安装或升级java,并配置环境变量

  注意:此处分为yum安装与rpm安装,区别在于yum安装省事但配置麻烦,rpm安装麻烦但配置省事。

1)yum安装

  在安装前可以使用yum list installed | grep jdk查看已经安装的JDK文件

[root@xuexi ~]# yum list installed | grep jdk
copy-jdk-configs.noarch 3.3-10.el7_5 @updates
java-1.8.0-openjdk.x86_64 1:1.8.0.212.b04-0.el7_6 @updates
java-1.8.0-openjdk-headless.x86_64 1:1.8.0.212.b04-0.el7_6 @updates

  再使用yum list | grep java-1.8查看1.8版本的实际安装包

[root@xuexi ~]$ yum list | grep java-1.8.0
java-1.8.0-openjdk.x86_64 1:1.8.0.212.b04-0.el7_6 @updates
java-1.8.0-openjdk-headless.x86_64 1:1.8.0.212.b04-0.el7_6 @updates
java-1.8.0-openjdk.i686 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-accessibility.i686 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-accessibility.x86_64
java-1.8.0-openjdk-accessibility-debug.i686
java-1.8.0-openjdk-accessibility-debug.x86_64
java-1.8.0-openjdk-debug.i686 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-debug.x86_64 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-demo.i686 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-demo.x86_64 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-demo-debug.i686 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-demo-debug.x86_64 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-devel.i686 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-devel.x86_64 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-devel-debug.i686 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-devel-debug.x86_64 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-headless.i686 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-headless-debug.i686 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-headless-debug.x86_64
java-1.8.0-openjdk-javadoc.noarch 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-javadoc-debug.noarch
java-1.8.0-openjdk-javadoc-zip.noarch 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-javadoc-zip-debug.noarch
java-1.8.0-openjdk-src.i686 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-src.x86_64 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-src-debug.i686 1:1.8.0.212.b04-0.el7_6 updates
java-1.8.0-openjdk-src-debug.x86_64 1:1.8.0.212.b04-0.el7_6 updates

  差太多了,我这里使用yum -y install java-1.8*安装下。

  在使用yum安装时是没有办法指定文件存放在哪里的,所以jdk文件也不清楚在哪里,环境变量配置上就有一定的麻烦,这一点就没有rpm好。

  我们使用which java看看java脚本最终指向何处

[root@xuexi ~]$ which java
/usr/bin/java
[root@xuexi ~]$ ll /usr/bin/java
lrwxrwxrwx. 1 root root 22 5月 5 16:17 /usr/bin/java -> /etc/alternatives/java
[root@xuexi ~]$ ll /etc/alternatives/java
lrwxrwxrwx. 1 root root 73 5月 5 16:17 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64/jre/bin/java
[root@xuexi ~]$ ll /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64/jre/bin/java
-rwxr-xr-x. 1 root root 7376 4月 18 01:18 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64/jre/bin/java

  这里和Windows就很类似了,我们看看有没有必要的文件

[root@xuexi ~]# ls /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64
bin demo include jre lib sample src.zip tapset
[root@xuexi ~]# ls /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64/lib
amd64 dt.jar jconsole.jar orb.idl tools.jar
ct.sym ir.idl jexec sa-jdi.jar
[root@xuexi ~]# ls /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64/bin
appletviewer java jconsole jps native2ascii schemagen xjc
clhsdb javac jdb jrunscript orbd serialver
extcheck javadoc jdeps jsadebugd pack200 servertool
hsdb javah jhat jstack policytool tnameserv
idlj javap jinfo jstat rmic unpack200
jar java-rmi.cgi jjs jstatd rmid wsgen
jarsigner jcmd jmap keytool rmiregistry wsimport

  没有问题,接下来就可以像Windows一样开始配置环境变量。注意有四个配置文件加载顺序是/etc/profile>>/etc/bashrc>>~/.bashrc>>~/.bash_profile,请根据情况进行文件修改。详见:

Shell变量的(4).添加环境变量

  此处以/etc/profile配置文件为例,在文件末尾添加如下行:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64
export PATH=${JAVA_HOME}/bin:$PATH
export CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar

  接着刷新下配置文件

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

  最后测试一下

[root@xuexi ~]# java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode)
[root@xuexi ~]# echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64

2)rpm安装

  首先需要下载一份rpm安装包并上传至CentOS7系统,使用rpm -ivh jdk-8u212-linux-x64.rpm安装或升级java到1.8版本。

[root@xuexi ~]# rpm -ivh jdk-8u212-linux-x64.rpm
警告:jdk-8u212-linux-x64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID ec551f03: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:jdk1.8-2000:1.8.0_212-fcs ################################# [100%]
Unpacking JAR files...
tools.jar...
plugin.jar...
javaws.jar...
deploy.jar...
rt.jar...
jsse.jar...
charsets.jar...
localedata.jar...

  接着可以使用rpm -pql /root/jdk-8u212-linux-x64.rpm看到安装包安装的目录(会列出所有,请及时停止)。当然也可以使用rpm -ivh --prefix=<dir> jdk-8u212-linux-x64.rpm安装到指定目录下。

  看一下安装目录结构以便配置环境变量

[root@xuexi ~]# ls /usr/java/
default jdk1.8.0_212-amd64 latest
[root@xuexi ~]# ls /usr/java/jdk1.8.0_212-amd64/
bin lib src.zip
COPYRIGHT LICENSE THIRDPARTYLICENSEREADME-JAVAFX.txt
include man THIRDPARTYLICENSEREADME.txt
javafx-src.zip README.html
jre release

  修改/etc/profile文件,在末尾添加如下三行

export JAVA_HOME=/usr/java/jdk1.8.0_212-amd64
export PATH=${JAVA_HOME}/bin:$PATH
export CLASSPATH=.:${JAVA_HOME}/lib/dt.jzr:${JAVA_HOME}/lib/tools.jar

  然后刷新配置文件

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

  最后测试一下

[root@xuexi ~]# echo $JAVA_HOME
/usr/java/jdk1.8.0_212-amd64
您在 /var/spool/mail/root 中有新邮件
[root@xuexi ~]# java -version
java version "1.8.0_212"
Java(TM) SE Runtime Environment (build 1.8.0_212-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.212-b10, mixed mode)

  

升级系统中的java到1.8版本的更多相关文章

  1. [原创]Android系统中常用JAVA类源码浅析之HashMap

    由于是浅析,所以我只分析常用的接口,注意是Android系统中的JAVA类,可能和JDK的源码有区别. 首先从构造函数开始, /** * Min capacity (other than zero) ...

  2. 各个版本 Windows 10 系统中自带的 .NET Framework 版本

    原文各个版本 Windows 10 系统中自带的 .NET Framework 版本 Windows 名称 Windows 版本 自带的 .NET Framework 版本 Windows 10 Oc ...

  3. 升级Linux中的JAVA版本

    首先查看本机中的JAVA版本 如何需要卸载掉现有的JAVA版本的话,可以使用rpm -qa | grep java 和 rpm -e xxx --nodeps进行卸载 登录到JAVA官方下载界面,提供 ...

  4. 在W10系统中配置Java环境变量后,cmd命令提示符找不到java

    java环境变量配置在W10系统上和以前有所区别,可能是W10版本导致也可能是W10一开始就出问题. 问题的表现就是你在环境变量里已经配置完JAVA_HOME,CLASSPATH,path之后在控制台 ...

  5. 详解Windows 7系统中IE8/IE9/IE10三个版本的关系(转)

    今年(2013)年初,微软开放了姗姗来迟的 IE10 for Windows 7 版本下载.至此,Windows 7 平台上可以运行三个 IE 浏览器版本.虽然 Windows 与 IE 经历了诸多版 ...

  6. Linux系统中查询发行版本号以及内核版本的命令总结

    了解Linux发行版本的版本号是一项非常重要的事情,大多数软件对系统的版本都有要求,发行版本号与软件不匹配,软件将无法安装或者无法使用.这边集合市面上流行的Linux发行版本版本号查询方法.有了这边文 ...

  7. ubuntu系统中java -version所显示的版本与/etc/profile中配置的$JAVA_HOME的关系

    问题产生 ubuntu 18.04环境下,执行 java -version 发现与/etc/profile中的$JAVA_HOME所设置的java版本不同. 推测原因 最近用apt install 安 ...

  8. Oracle数据库中调用Java类开发存储过程、函数的方法

    Oracle数据库中调用Java类开发存储过程.函数的方法 时间:2014年12月24日  浏览:5538次 oracle数据库的开发非常灵活,不仅支持最基本的SQL,而且还提供了独有的PL/SQL, ...

  9. 『动善时』JMeter基础 — 57、Linux系统中运行JMeter脚本

    目录 1.Linux系统中安装Java环境 (1)解压Java安装包 (2)配置Java环境变量 (3)验证Java环境是否配置成功 2.Linux系统中安装JMeter (1)下载JMeter (2 ...

随机推荐

  1. xargs 使用详解

    参考转载:https://www.cnblogs.com/f-ck-need-u/p/5925923.html#auto_id_12 xargs 作用:将管道传输过来的stdin进行处理(分割.分批) ...

  2. web开发原生开发混合开发的区别优势

    最近有人在讨论是原生开发好还是,混合开发好,以下是引用了数据来说: 最近原生应用.Web应用.混合应用的名字让我们听得比较熟悉了,现在我们就通过评析各种应用的优缺点来更进一步看看这三者的区别. 一.原 ...

  3. C#的反射(一)

    1.什么是元数据(MetaData)和反射(reflection) 一般情况下我们的程序都在处理数据的读.写.操作和展示.但是有些程序操作的数据不是数字.文本.图片,而是程序和程序类型本身的信息. ① ...

  4. Fillder的前后端的应用

    测试需求:有一个功能,允许用钻石兑换金币,假设1钻石=1金币,前端控制一次至少兑换10个,最多100个,后台不做验证. 测试方案:输入10,也就是告诉前端我要兑换10个金币,等前端验证通过之后,截取要 ...

  5. 文件已经传输过来,数据在data,http接收

  6. python中常用的九种预处理方法

    本文总结的是我们大家在python中常见的数据预处理方法,以下通过sklearn的preprocessing模块来介绍; 1. 标准化(Standardization or Mean Removal ...

  7. 如何查看JVM的内存

    学过java的人都知道,jvm是解释运行java的,java能够作为跨平台语言,也是因为jvm的存在,合理的使用jvm内存可以帮助程序很好的运行.那么,怎么查看jvm的内存使用情况呢,下面本文介绍一下 ...

  8. 前端知识体系:JavaScript基础-作用域和闭包-JavaScript的作用域和作用域链

    JavaScript的作用域和作用域链 作用域: 变量的作用域无非两种:全局作用域和局部作用域 全局作用域: 最外层函数定义的变量拥有全局作用域.即对任何内部函数来说都是可以访问的. <scri ...

  9. C指针的运算

    指针的运算在数组中才有意义 int *p; p++,一定是在一片连续的区域才有意义,当然越界也会带来诸多问题. void main() { ; int *p = &num;//这根本无界可言 ...

  10. MongoDB 比较适用哪些业务场景

    转载自:https://www.cnblogs.com/williamjie/p/10416294.html 在云栖社区上发起了一个 MongoDB 使用场景及运维管理问题交流探讨的技术话题,有近50 ...