一、查看是否已经安装了JDK

#查看本机是否已经安装了jdk
$ sudo yum list installed | grep java
java-1.8.-openjdk.x86_64 :1.8.0.201.b09-.el7_6 @updates
java-1.8.-openjdk-accessibility.x86_64 :1.8.0.201.b09-.el7_6 @updates
java-1.8.-openjdk-accessibility-debug.x86_64
java-1.8.-openjdk-debug.x86_64 :1.8.0.201.b09-.el7_6 @updates
java-1.8.-openjdk-demo.x86_64 :1.8.0.201.b09-.el7_6 @updates
java-1.8.-openjdk-demo-debug.x86_64 :1.8.0.201.b09-.el7_6 @updates
java-1.8.-openjdk-devel.x86_64 :1.8.0.201.b09-.el7_6 @updates
java-1.8.-openjdk-devel-debug.x86_64 :1.8.0.201.b09-.el7_6 @updates
java-1.8.-openjdk-headless.x86_64 :1.8.0.201.b09-.el7_6 @updates
java-1.8.-openjdk-headless-debug.x86_64
java-1.8.-openjdk-javadoc.noarch :1.8.0.201.b09-.el7_6 @updates
java-1.8.-openjdk-javadoc-debug.noarch :1.8.0.201.b09-.el7_6 @updates
java-1.8.-openjdk-javadoc-zip.noarch :1.8.0.201.b09-.el7_6 @updates
java-1.8.-openjdk-javadoc-zip-debug.noarch
java-1.8.-openjdk-src.x86_64 :1.8.0.201.b09-.el7_6 @updates
java-1.8.-openjdk-src-debug.x86_64 :1.8.0.201.b09-.el7_6 @updates
java-atk-wrapper.x86_64 0.30.-.el7 @base
javapackages-tools.noarch 3.4.-.el7 @base
python-javapackages.noarch 3.4.-.el7 @base
tzdata-java.noarch 2018i-.el7 @updates

二、卸载原有jdk

# *表示卸载所有以java-1.8.-openjdk开头的,-y 表示自动回复yes
$ sudo yum -y remove java-1.8.-openjdk* javapackages-tools.noarch python-javapackages.noarch tzdata-java.noarch

三、查看JDk软件包列表

$ sudo yum list java*
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors..com
* extras: mirrors..com
* updates: mirrors..com
可安装的软件包
java-1.6.-openjdk.x86_64 :1.6.0.41-1.13.13.1.el7_3 base # jdk6
java-1.6.-openjdk-demo.x86_64 :1.6.0.41-1.13.13.1.el7_3 base
java-1.6.-openjdk-devel.x86_64 :1.6.0.41-1.13.13.1.el7_3 base
java-1.6.-openjdk-javadoc.x86_64 :1.6.0.41-1.13.13.1.el7_3 base
java-1.6.-openjdk-src.x86_64 :1.6.0.41-1.13.13.1.el7_3 base
java-1.7.-openjdk.x86_64 :1.7.0.211-2.6.17.1.el7_6 updates # jdk7
java-1.7.-openjdk-accessibility.x86_64 :1.7.0.211-2.6.17.1.el7_6 updates
java-1.7.-openjdk-demo.x86_64 :1.7.0.211-2.6.17.1.el7_6 updates
java-1.7.-openjdk-devel.x86_64 :1.7.0.211-2.6.17.1.el7_6 updates
java-1.7.-openjdk-headless.x86_64 :1.7.0.211-2.6.17.1.el7_6 updates
java-1.7.-openjdk-javadoc.noarch :1.7.0.211-2.6.17.1.el7_6 updates
java-1.7.-openjdk-src.x86_64 :1.7.0.211-2.6.17.1.el7_6 updates
java-1.8.-openjdk.i686 :1.8.0.191.b12-.el7_6 updates # jdk8
java-1.8.-openjdk.x86_64 :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-accessibility.i686 :1.8.0.191.b12-.el7_6 updates
java-1.8.-openjdk-accessibility.x86_64 :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-accessibility-debug.i686 :1.8.0.191.b12-.el7_6 updates
java-1.8.-openjdk-accessibility-debug.x86_64 :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-debug.i686 :1.8.0.191.b12-.el7_6 updates
java-1.8.-openjdk-debug.x86_64 :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-demo.i686 :1.8.0.191.b12-.el7_6 updates
java-1.8.-openjdk-demo.x86_64 :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-demo-debug.i686 :1.8.0.191.b12-.el7_6 updates
java-1.8.-openjdk-demo-debug.x86_64 :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-devel.i686 :1.8.0.191.b12-.el7_6 updates
java-1.8.-openjdk-devel.x86_64 :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-devel-debug.i686 :1.8.0.191.b12-.el7_6 updates
java-1.8.-openjdk-devel-debug.x86_64 :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-headless.i686 :1.8.0.191.b12-.el7_6 updates
java-1.8.-openjdk-headless.x86_64 :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-headless-debug.i686 :1.8.0.191.b12-.el7_6 updates
java-1.8.-openjdk-headless-debug.x86_64 :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-javadoc.noarch :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-javadoc-debug.noarch :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-javadoc-zip.noarch :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-javadoc-zip-debug.noarch :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-src.i686 :1.8.0.191.b12-.el7_6 updates
java-1.8.-openjdk-src.x86_64 :1.8.0.201.b09-.el7_6 updates
java-1.8.-openjdk-src-debug.i686 :1.8.0.191.b12-.el7_6 updates
java-1.8.-openjdk-src-debug.x86_64 :1.8.0.201.b09-.el7_6 updates
java--openjdk.i686 :11.0.2.7-.el7_6 updates #jdk11
java--openjdk.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-debug.i686 :11.0.2.7-.el7_6 updates
java--openjdk-debug.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-demo.i686 :11.0.2.7-.el7_6 updates
java--openjdk-demo.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-demo-debug.i686 :11.0.2.7-.el7_6 updates
java--openjdk-demo-debug.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-devel.i686 :11.0.2.7-.el7_6 updates
java--openjdk-devel.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-devel-debug.i686 :11.0.2.7-.el7_6 updates
java--openjdk-devel-debug.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-headless.i686 :11.0.2.7-.el7_6 updates
java--openjdk-headless.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-headless-debug.i686 :11.0.2.7-.el7_6 updates
java--openjdk-headless-debug.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-javadoc.i686 :11.0.2.7-.el7_6 updates
java--openjdk-javadoc.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-javadoc-debug.i686 :11.0.2.7-.el7_6 updates
java--openjdk-javadoc-debug.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-javadoc-zip.i686 :11.0.2.7-.el7_6 updates
java--openjdk-javadoc-zip.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-javadoc-zip-debug.i686 :11.0.2.7-.el7_6 updates
java--openjdk-javadoc-zip-debug.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-jmods.i686 :11.0.2.7-.el7_6 updates
java--openjdk-jmods.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-jmods-debug.i686 :11.0.2.7-.el7_6 updates
java--openjdk-jmods-debug.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-src.i686 :11.0.2.7-.el7_6 updates
java--openjdk-src.x86_64 :11.0.2.7-.el7_6 updates
java--openjdk-src-debug.i686 :11.0.2.7-.el7_6 updates
java--openjdk-src-debug.x86_64 :11.0.2.7-.el7_6 updates
java-atk-wrapper.i686 0.30.-.el7 base
java-atk-wrapper.x86_64 0.30.-.el7 base
java_cup.noarch :.11a-.el7 base
java_cup-javadoc.noarch :.11a-.el7 base
java_cup-manual.noarch :.11a-.el7 base
javacc.noarch 5.0-.el7 base
javacc-demo.noarch 5.0-.el7 base
javacc-javadoc.noarch 5.0-.el7 base
javacc-manual.noarch 5.0-.el7 base
javacc-maven-plugin.noarch 2.6-.el7 base
javacc-maven-plugin-javadoc.noarch 2.6-.el7 base
javamail.noarch 1.4.-.el7 base
javamail-javadoc.noarch 1.4.-.el7 base
javapackages-tools.noarch 3.4.-.el7 base
javassist.noarch 3.16.-.el7 base
javassist-javadoc.noarch 3.16.-.el7 base

四、安装JDK

#安装java-1.8.-openjdk开头的所有程序,-y表示自动回复yes。直到控制台返回Complete或者完毕,表示安装成功。
$ sudo yum install -y java-1.8.-openjdk*

查看版本信息

$ sudo java -version
openjdk version "1.8.0_201"
OpenJDK Runtime Environment (build 1.8.0_201-b09)
OpenJDK -Bit Server VM (build 25.201-b09, mixed mode)
$ sudo javac -version
javac 1.8.0_201

五、查看JDK安装路径

已经通过yum安装好了jdk,那么安装到哪里去了呢?

查看方式一:

此时,如果使用javac,java都是可以的。我们还没有设置环境变量,为什么直接可使用了呢?

这就体现出了在线安装的好处了,它会自动配置环境变量。我们可以通过echo $PATH命令查看

#:为Linux系统中环境变量分隔符
$ sudo echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

如何查看jdk的安装路径,JAVA_HOME呢?

$ sudo whereis javac
# 很明显,/usr/bin/javac默认加入了PATH路径(/usr/bin)中
javac: /usr/bin/javac /usr/share/man/man1/javac.1.gz
# 可以使用ll命令(或ls -l)查看它链接的地址
$ sudo ll /usr/bin/javac
# 可以看到/usr/bin/javac指向的地址是/etc/alternatives/javac
lrwxrwxrwx. root root 3月 : /usr/bin/javac -> /etc/alternatives/javac
# 继续查看是否有链接
$ sudo ll /etc/alternatives/javac
# 可以看到/etc/alternatives/javac 指向/usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64/bin/javac
lrwxrwxrwx. root root 3月 : /etc/alternatives/javac -> /usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64/bin/javac
# 继续查看是否有链接
$ sudo ll /usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64/bin/javac
# 可以看到/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64/bin/javac为一个真实的地址,而非一个软链接
-rwxr-xr-x. root root 3月 : /usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64/bin/javac

所以JAVA_HOME就是/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64

查看方式二:

其实yum命令默认安装路径为/usr/lib/jvm,那么完整的安装路径是什么呢?

$ sudo ll /usr/lib/jvm
总用量
lrwxrwxrwx. root root 3月 : java -> /etc/alternatives/java_sdk
lrwxrwxrwx. root root 3月 : java-1.8. -> /etc/alternatives/java_sdk_1.8.0
lrwxrwxrwx. root root 3月 : java-1.8.-openjdk -> /etc/alternatives/java_sdk_1..0_openjdk
drwxr-xr-x. root root 3月 : java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64 #其他都是软链接,只有这个和下面一个是真实地址。下面那个是debug,当然这个就是jdk的安装路径了,也就是JAVA_HOME地址。
drwxr-xr-x. root root 3月 : java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64-debug
lrwxrwxrwx. root root 3月 : java-openjdk -> /etc/alternatives/java_sdk_openjdk
lrwxrwxrwx. root root 3月 : jre -> /etc/alternatives/jre
lrwxrwxrwx. root root 3月 : jre-1.8. -> /etc/alternatives/jre_1.8.0
lrwxrwxrwx. root root 3月 : jre-1.8.-openjdk -> /etc/alternatives/jre_1..0_openjdk
lrwxrwxrwx. root root 3月 : jre-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64 -> java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64/jre
lrwxrwxrwx. root root 3月 : jre-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64-debug -> java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64-debug/jre
lrwxrwxrwx. root root 3月 : jre-openjdk -> /etc/alternatives/jre_openjdk

六、设置环境变量

#设置JAVA_HOME指向jdk的安装路径
$ sudo vi /etc/profile
#在文件最后加入如下内容: # add java environment
export JAVA_HOME=/usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:${JRE_HOME}:${CLASSPATH}:$PATH #修改/etc/profile之后让其生效
$ sudo source /etc/profile #查看JAVA_HOME路径
$ sudo echo $JAVA_HOME
/usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64
#查看JRE_HOME路径
$ sudo echo $JRE_HOME
/usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64/jre
#查看CLASSPATH路径
$ sudo echo $CLASSPATH
.:/usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64/lib:/usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64/jre/lib
#查看完整PATH路径
$ sudo echo $PATH
/usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64/bin:/usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64/jre:.:/usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64/lib:/usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64/jre/lib:/usr/lib/jvm/java-1.8.-openjdk-1.8.0.201.b09-.el7_6.x86_64/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

Centos下用yum命令按照jdk的更多相关文章

  1. CentOS下用yum命令安装jdk【转】

    一.使用yum命令安装 1.查看是否已安装JDK,卸载 [root@192 ~]# yum list installed |grep java java-1.8.0-openjdk.x86_64    ...

  2. CentOS下用yum命令安装jdk

    一.使用yum命令安装 1.查看是否已安装JDK,卸载 [root@192 ~]# yum list installed |grep java java-1.8.0-openjdk.x86_64    ...

  3. CentOS 下使用yum 命令安装MySQL

    CentOS Linux下使用yum 命令安装MySQL过程记录. 1. 查看服务器中有没有安装过MySQL 1. 查看有没有安装包: yum list mysql* #移除已经安装的mysql yu ...

  4. CentOS下的yum命令

    yum命令是rpm的一款前端工具,可以安装.更新.卸载rpm包,可以从指定服务器下下载rpm包并安装,可以自动解决依赖问题. 语法: yum [options] [command] [package ...

  5. Centos下使用yum命令报错 except KeyboardInterrupt, e: SyntaxError: invalid syntax

    使用yum命令报错 File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: ^ SyntaxError: invalid ...

  6. CentOS下使用yum安装Apache极为方便,只需要在终端键入以下命令即可

    CentOS下使用yum安装Apache极为方便,只需要在终端键入以下命令即可 1.安装Apache yum install httpd 2.设置服务器开机自动启动Apache systemctl e ...

  7. CentOS下安装yum源的流程和操作

    一般公司都用Linux来搭建服务器,Linux安装软件时能够用yum安装依赖包是一件非常简单而幸福的事情,因为你只需一个简单的安装命令yum install []即可安装相应的软件,yum工具会自动的 ...

  8. centOS下更新yum源

    CentOS下更新yum源 1.使用如下命令,备份/etc/yum.repos.d/CentOS-Base.repo. cp /etc/yum.repos.d/CentOS-Base.repo /et ...

  9. CentOS下使用yum安装配置和使用svn

    安装说明 系统环境:CentOS-6.3安装方式:yum install (源码安装容易产生版本兼容的问题)安装软件:系统自动下载SVN软件 检查已安装版本 ? 1 2 3 4 5 6 7 8 9 1 ...

随机推荐

  1. STAX项目结束总结

    STAX:Support Taxonomy Management Console. 使用了MVC+WCF+jQuery+Azman.msc(权限控制)+kendoUI+SQL SERVER 2012

  2. 2018.09.15点名器(简单dp)

    描述 Ssoier在紧张的学习中,杜老师每天给他们传授精妙的知识. 杜老师为了活跃气氛,设计了一个点名器,这个点名器包含一个长度为M的数组(下标1开始),每个元素是一个oier的名字,每次点名的时候, ...

  3. arduino uno r3 + SIM900 + USB打火机 实现电话触发点火

    需求来源 1.儿子过完年6岁,喜欢玩烟花,但是胆子小,于是我就负责点火,从年前26到大年初八,每天晚上要给儿子点鞭炮啊点鞭炮. 2.这边过年要打关门炮跟开门炮,大年初一凌晨还要起来帮老妈点鞭炮,说实在 ...

  4. gj3 Python数据模型(魔法函数)

    3.1 什么是魔法函数 类里面,实现某些特性的内置函数,类似 def __xx__(): 的形式. 不要自己定义XX,并不是和某个类挂钩的 class Company(object): def __i ...

  5. UVa 111 History Grading (简单DP,LIS或LCS)

    题意:题意就是坑,看不大懂么,结果就做不对,如果看懂了就so easy了,给定n个事件,注意的是, 它给的是第i个事件发生在第多少位,并不是像我们想的,第i位是哪个事件,举个例子吧,4 2 3 1, ...

  6. Java_得到GET和POST请求URL和参数列表

    一. 获取URL: getRequestURL()(还有个getRequestURI(),只取后面部分) 二. 获取参数列表: 1.getQueryString() 只适用于GET,比如客户端发送ht ...

  7. 如何使用C++11实现C#属性概念设计

    目录(原创博客,版权所有,转载请注明出处 http://www.cnblogs.com/feng-sc) 1.概述 2.C#属性的概念  2.1.简单示例代码介绍C#中的属性  2.2.C++实现效果 ...

  8. hdu1302 The Snail

    题目 题目大意: 一只蜗牛在H英尺高的底部,想爬到顶端.蜗牛可以在太阳升起的时候爬上U英尺,但是在晚上睡觉的时候会滑下D英尺.蜗牛的疲劳系数为F(百分比),                       ...

  9. KNN和K-Means的区别

    KNN和K-Means的区别 KNN K-Means 1.KNN是分类算法 2.监督学习 3.喂给它的数据集是带label的数据,已经是完全正确的数据 1.K-Means是聚类算法 2.非监督学习 3 ...

  10. Ansible组件之inventory主机清单

    静态inventory 所有的主机信息都存放在Ansible的inventory组件里面,默认Ansible的inventory是一个静态的ini格式的文件/etc/ansible/hosts,当然还 ...