Ubuntu 18.04 LTS系统上通过sudo apt install openjdk-11-*命令安装的jdk11版本依然是jdk10,怎么样才能安装openjdk 11呢,今天,我们就来完成这一工作。

download software package

lwk@qwfys:~$sudo curl -sL https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_linux-x64_bin.tar.gz -o /usr/lib/jvm/openjdk-11.0.1_linux-x64_bin.tar.gz

unzip package

lwk@qwfys:~$cd /usr/lib/jvm/
lwk@qwfys:/usr/lib/jvm$
lwk@qwfys:/usr/lib/jvm$sudo tar -zxvf openjdk-11.0.1_linux-x64_bin.tar.gz
lwk@qwfys:/usr/lib/jvm$ ll
total 32
drwxr-xr-x 5 root root 4096 Jan 4 02:27 ./
drwxr-xr-x 153 root root 12288 Dec 27 02:17 ../
lrwxrwxrwx 1 root root 20 Nov 20 09:07 java-1.8.0-openjdk-amd64 -> java-8-openjdk-amd64/
-rw-r--r-- 1 root root 2600 Nov 20 09:07 .java-1.8.0-openjdk-amd64.jinfo
drwxr-xr-x 8 root root 4096 Jan 4 01:42 java-8-openjdk-amd64/
drwxr-xr-x 8 root root 4096 Jan 4 02:04 jdk-11.0.1/
drwxr-xr-x 2 root root 4096 Jan 4 01:42 openjdk-8/
lwk@qwfys:/usr/lib/jvm$

config

update-alternatives install

lwk@qwfys:/usr/lib/jvm$ cd jdk-11.0.1/bin/
lwk@qwfys:/usr/lib/jvm/jdk-11.0.1/bin$ ll
total 516
drwxr-xr-x 2 root root 4096 Jan 4 02:04 ./
drwxr-xr-x 8 root root 4096 Jan 4 02:04 ../
-rwxr-xr-x 1 668 668 12952 Oct 6 20:17 jaotc*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jar*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jarsigner*
-rwxr-xr-x 1 668 668 8672 Oct 6 20:17 java*
-rwxr-xr-x 1 668 668 8784 Oct 6 20:17 javac*
-rwxr-xr-x 1 668 668 8784 Oct 6 20:17 javadoc*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 javap*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jcmd*
-rwxr-xr-x 1 668 668 12888 Oct 6 20:17 jconsole*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jdb*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jdeprscan*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jdeps*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jhsdb*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jimage*
-rwxr-xr-x 1 668 668 12880 Oct 6 20:17 jinfo*
-rwxr-xr-x 1 668 668 8784 Oct 6 20:17 jjs*
-rwxr-xr-x 1 668 668 8784 Oct 6 20:17 jlink*
-rwxr-xr-x 1 668 668 12880 Oct 6 20:17 jmap*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jmod*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jps*
-rwxr-xr-x 1 668 668 8792 Oct 6 20:17 jrunscript*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jshell*
-rwxr-xr-x 1 668 668 12880 Oct 6 20:17 jstack*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jstat*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jstatd*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 keytool*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 pack200*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 rmic*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 rmid*
-rwxr-xr-x 1 668 668 8744 Oct 6 20:17 rmiregistry*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 serialver*
-rwxr-xr-x 1 668 668 117656 Oct 6 20:17 unpack200*
lwk@qwfys:/usr/lib/jvm/jdk-11.0.1/bin$sudo sh -c 'for bin in /usr/lib/jvm/jdk-11.0.1/bin/*; do update-alternatives --install /usr/bin/$(basename $bin) $(basename $bin) $bin 100; done'
lwk@qwfys:/usr/lib/jvm/jdk-11.0.1/bin$sudo sh -c 'for bin in /usr/lib/jvm/jdk-11.0.1/bin/*; do update-alternatives --set $(basename $bin) $bin; done'
lwk@qwfys:/usr/lib/jvm/jdk-11.0.1/bin$

set JAVA_HOME

lwk@qwfys:/usr/lib/jvm/jdk-11.0.1/bin$ cd /etc/profile.d/
lwk@qwfys:/etc/profile.d$ vim jdk.sh
lwk@qwfys:/etc/profile.d$ cat jdk.sh
export J2SDKDIR=/usr/lib/jvm/jdk-11.0.1
export J2REDIR=/usr/lib/jvm/jdk-11.0.1
#export PATH=$PATH:/usr/lib/jvm/jdk-11.0.1/bin
export JAVA_HOME=/usr/lib/jvm/jdk-11.0.1
lwk@qwfys:/etc/profile.d$

view

lwk@qwfys:~$ java -version
openjdk version "11.0.1" 2018-10-16
OpenJDK Runtime Environment 18.9 (build 11.0.1+13)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.1+13, mixed mode)
lwk@qwfys:~$ javac -version
javac 11.0.1
lwk@qwfys:~$

  至此安装完成。

uninstall

remove ‘JAVA_HOME’

lwk@qwfys:~$ sudo rm /etc/profile.d/jdk.sh
lwk@qwfys:~$

update-alternatives uninstall

lwk@qwfys:~$ cd /usr/lib/jvm/jdk-11.0.1/bin/
lwk@qwfys:/usr/lib/jvm/jdk-11.0.1/bin$ ll
total 516
drwxr-xr-x 2 root root 4096 Jan 4 02:04 ./
drwxr-xr-x 8 root root 4096 Jan 4 02:04 ../
-rwxr-xr-x 1 668 668 12952 Oct 6 20:17 jaotc*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jar*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jarsigner*
-rwxr-xr-x 1 668 668 8672 Oct 6 20:17 java*
-rwxr-xr-x 1 668 668 8784 Oct 6 20:17 javac*
-rwxr-xr-x 1 668 668 8784 Oct 6 20:17 javadoc*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 javap*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jcmd*
-rwxr-xr-x 1 668 668 12888 Oct 6 20:17 jconsole*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jdb*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jdeprscan*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jdeps*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jhsdb*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jimage*
-rwxr-xr-x 1 668 668 12880 Oct 6 20:17 jinfo*
-rwxr-xr-x 1 668 668 8784 Oct 6 20:17 jjs*
-rwxr-xr-x 1 668 668 8784 Oct 6 20:17 jlink*
-rwxr-xr-x 1 668 668 12880 Oct 6 20:17 jmap*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jmod*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jps*
-rwxr-xr-x 1 668 668 8792 Oct 6 20:17 jrunscript*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jshell*
-rwxr-xr-x 1 668 668 12880 Oct 6 20:17 jstack*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jstat*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 jstatd*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 keytool*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 pack200*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 rmic*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 rmid*
-rwxr-xr-x 1 668 668 8744 Oct 6 20:17 rmiregistry*
-rwxr-xr-x 1 668 668 8736 Oct 6 20:17 serialver*
-rwxr-xr-x 1 668 668 117656 Oct 6 20:17 unpack200*
lwk@qwfys:/usr/lib/jvm/jdk-11.0.1/bin$ sudo sh -c 'for bin in /usr/lib/jvm/jdk-11.0.1/bin/*; do update-alternatives --remove $(basename $bin) $bin; done'
update-alternatives: removing manually selected alternative - switching jaotc to auto mode
update-alternatives: removing manually selected alternative - switching jar to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jar to provide /usr/bin/jar (jar) in auto mode
update-alternatives: removing manually selected alternative - switching jarsigner to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jarsigner to provide /usr/bin/jarsigner (jarsigner) in auto mode
update-alternatives: removing manually selected alternative - switching java to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java to provide /usr/bin/java (java) in auto mode
update-alternatives: removing manually selected alternative - switching javac to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/javac to provide /usr/bin/javac (javac) in auto mode
update-alternatives: removing manually selected alternative - switching javadoc to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/javadoc to provide /usr/bin/javadoc (javadoc) in auto mode
update-alternatives: removing manually selected alternative - switching javap to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/javap to provide /usr/bin/javap (javap) in auto mode
update-alternatives: removing manually selected alternative - switching jcmd to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jcmd to provide /usr/bin/jcmd (jcmd) in auto mode
update-alternatives: removing manually selected alternative - switching jconsole to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jconsole to provide /usr/bin/jconsole (jconsole) in auto mode
update-alternatives: removing manually selected alternative - switching jdb to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jdb to provide /usr/bin/jdb (jdb) in auto mode
update-alternatives: removing manually selected alternative - switching jdeprscan to auto mode
update-alternatives: removing manually selected alternative - switching jdeps to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jdeps to provide /usr/bin/jdeps (jdeps) in auto mode
update-alternatives: removing manually selected alternative - switching jhsdb to auto mode
update-alternatives: removing manually selected alternative - switching jimage to auto mode
update-alternatives: removing manually selected alternative - switching jinfo to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jinfo to provide /usr/bin/jinfo (jinfo) in auto mode
update-alternatives: removing manually selected alternative - switching jjs to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/jjs to provide /usr/bin/jjs (jjs) in auto mode
update-alternatives: removing manually selected alternative - switching jlink to auto mode
update-alternatives: removing manually selected alternative - switching jmap to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jmap to provide /usr/bin/jmap (jmap) in auto mode
update-alternatives: removing manually selected alternative - switching jmod to auto mode
update-alternatives: removing manually selected alternative - switching jps to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jps to provide /usr/bin/jps (jps) in auto mode
update-alternatives: removing manually selected alternative - switching jrunscript to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jrunscript to provide /usr/bin/jrunscript (jrunscript) in auto mode
update-alternatives: removing manually selected alternative - switching jshell to auto mode
update-alternatives: removing manually selected alternative - switching jstack to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jstack to provide /usr/bin/jstack (jstack) in auto mode
update-alternatives: removing manually selected alternative - switching jstat to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jstat to provide /usr/bin/jstat (jstat) in auto mode
update-alternatives: removing manually selected alternative - switching jstatd to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jstatd to provide /usr/bin/jstatd (jstatd) in auto mode
update-alternatives: removing manually selected alternative - switching keytool to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/keytool to provide /usr/bin/keytool (keytool) in auto mode
update-alternatives: removing manually selected alternative - switching pack200 to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/pack200 to provide /usr/bin/pack200 (pack200) in auto mode
update-alternatives: removing manually selected alternative - switching rmic to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/rmic to provide /usr/bin/rmic (rmic) in auto mode
update-alternatives: removing manually selected alternative - switching rmid to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/rmid to provide /usr/bin/rmid (rmid) in auto mode
update-alternatives: removing manually selected alternative - switching rmiregistry to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/rmiregistry to provide /usr/bin/rmiregistry (rmiregistry) in auto mode
update-alternatives: removing manually selected alternative - switching serialver to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/serialver to provide /usr/bin/serialver (serialver) in auto mode
update-alternatives: removing manually selected alternative - switching unpack200 to auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/unpack200 to provide /usr/bin/unpack200 (unpack200) in auto mode
lwk@qwfys:/usr/lib/jvm/jdk-11.0.1/bin$

remove the java installation directory

lwk@qwfys:/usr/lib/jvm/jdk-11.0.1/bin$ cd ../../
lwk@qwfys:/usr/lib/jvm$ ll
total 32
drwxr-xr-x 5 root root 4096 Jan 4 02:27 ./
drwxr-xr-x 153 root root 12288 Dec 27 02:17 ../
lrwxrwxrwx 1 root root 20 Nov 20 09:07 java-1.8.0-openjdk-amd64 -> java-8-openjdk-amd64/
-rw-r--r-- 1 root root 2600 Nov 20 09:07 .java-1.8.0-openjdk-amd64.jinfo
drwxr-xr-x 8 root root 4096 Jan 4 01:42 java-8-openjdk-amd64/
drwxr-xr-x 8 root root 4096 Jan 4 02:04 jdk-11.0.1/
drwxr-xr-x 2 root root 4096 Jan 4 01:42 openjdk-8/
lwk@qwfys:/usr/lib/jvm$ sudo rm -rf jdk-11.0.1/
lwk@qwfys:/usr/lib/jvm$ ll
total 28
drwxr-xr-x 4 root root 4096 Jan 4 03:38 ./
drwxr-xr-x 153 root root 12288 Dec 27 02:17 ../
lrwxrwxrwx 1 root root 20 Nov 20 09:07 java-1.8.0-openjdk-amd64 -> java-8-openjdk-amd64/
-rw-r--r-- 1 root root 2600 Nov 20 09:07 .java-1.8.0-openjdk-amd64.jinfo
drwxr-xr-x 8 root root 4096 Jan 4 01:42 java-8-openjdk-amd64/
drwxr-xr-x 2 root root 4096 Jan 4 01:42 openjdk-8/
lwk@qwfys:/usr/lib/jvm$

view

lwk@qwfys:~$ java -version
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-8u191-b12-0ubuntu0.18.04.1-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
lwk@qwfys:~$ javac -version
javac 1.8.0_191
lwk@qwfys:~$

  至此卸载完成。

                </div>

Install Openjdk11 to Ubuntu 18.04 LTS的更多相关文章

  1. How to Install Oracle Java 11 on Ubuntu 18.04 LTS (Bionic) Written by Rahul, Updated on April 3, 20

    本文系转载备份 请阅读点击下面链接阅读原文以获取更佳地阅读体验.谢谢. How to Install Oracle Java 11 on Ubuntu 18.04 LTS (Bionic) Writt ...

  2. Ubuntu 18.04 LTS 常用软件安装杂记

    之前个人笔记本装的是 Linux Mint,用了一段时间但是体验不佳,所以打算换成 Ubuntu .作为一个 Linux 小白,当时配置一些软件环境费了不少时间.这次打算简单记录下,和大家分享一下我的 ...

  3. [转]Win7 + Ubuntu 18.04 LTS (Bionic Beaver)双系统安装方法

    这里介绍在win7的基础上,安装ubuntu 18.04 LTS,实现双系统启动. 首先,假设你已安装了windows 7系统. 一. 制作ubuntu U盘启动盘. 方法见http://blog.p ...

  4. 将 Ubuntu 16.04 LTS 升级到 Ubuntu 18.04 LTS

    将 Ubuntu 16.04 LTS 升级到 Ubuntu 18.04 LTS   Ubuntu 18.04 LTS(Bionic Beaver)即将发布, 如果您正在使用Ubuntu 16.04LT ...

  5. 在 Ubuntu 18.04 LTS 无头服务器上安装 Oracle VirtualBox

    作者: Sk 译者: LCTT qhwdw | 2018-10-12 01:59 本教程将指导你在 Ubuntu 18.04 LTS 无头服务器上,一步一步地安装 Oracle VirtualBox. ...

  6. Ubuntu 18.04 LTS 设置代理(系统代理;http 代理;sock5 代理;apt 代理 ...)

    1. 设置系统代理 1.1 设置 http 代理 1.1.1 只在当前 shell 生效 export http_proxy="http://<user>:<passwor ...

  7. WSL Ubuntu 18.04 LTS + VS Code

    WSL Ubuntu 18.04 LTS + VS Code ​ WSL(Windows Subsystem for Linux)使得Windows用户能够在Windows系统上使用原生的Linux环 ...

  8. 如何在Ubuntu 18.04 LTS上安装和配置MongoDB

    MongoDB是一款非关系型数据库,提供高性能,高可用性和自动扩展企业数据库. MongoDB是一个非关系型数据库,因此您不能使用SQL(结构化查询语言)插入和检索数据,也不会将数据存储在MySQL或 ...

  9. 转:ubuntu 18.04 LTS 安装 java10(JDK) 及问题说明

    原文地址:ubuntu 18.04 LTS 安装 java10 及问题说明 1.下载相应的安装包,例如jdk-10.0.1_linux-x64_bin.tar.gz.下载地址: http://www. ...

随机推荐

  1. Android——<uses-sdk>

    语法(SYNTAX): <uses-sdk android:minSdkVersion="integer" android:targetSdkVersion="in ...

  2. 2-1 Numpy-数组

    (1) 数组的创建 # !usr/bin/env python # Author:@vilicute import numpy as np # 1.用array创建数组并查看数组的属性 arr1 = ...

  3. pygame-常用的方法

    1.pygame常用的方法 2.语音 图片

  4. oracle如何检查用户是否用了默认密码

    如果使用默认密码,很可能就对你的数据库造成一定的安全隐患,那么可以使用如下的查询获得那些用户使用默认密码 select username "User(s) with Default Pass ...

  5. Linux下C 更改字符在终端的显示颜色

    使用\033[01;04;32;41m之类的配色方案在需要输出显示的文本之前,可以改变应用程序输出文本的颜色或者背景颜色. 比如: #include <stdio.h> int main( ...

  6. MVC设计之MVC设计模式(介绍)

    mvc介绍; 首先先引用一个百度百科的介绍: MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用 ...

  7. zabbix概述篇

    zabbix监控系统概述 监控系统 决不允许未经监控的业务和服务的上线 基本功能 采样:获取客户端数据(主动和被动模式) 存储 展示 告警 监控通道 ssh/telnet:无agent snmp:简单 ...

  8. hdu1907 尼姆博弈

    尼姆博弈的性质. 最后一个取输.若a1^a2^a3...^a4=0表示利他态T,不然为利己态S.充裕堆:1个堆里的个数大于2.T2表示充裕堆大于等于2,T1表示充裕堆大于等于1,T0表示无充裕堆.S2 ...

  9. 使用 git 来管理 PCB 版本

    使用 git 来管理 PCB 版本 在传统的 PCB 版本管理是复制一份,再重命名,写上日期,写上修改日志. 自从接触了 git 后,发现 git 的版本管理完全可以胜任,且可以做的更好. 原来使用商 ...

  10. 直击 KubeCon 2019 现场,阿里云 Hands-on Workshop 亮点回顾

    2019 年 6 月 24 日,KubeCon + CloudNativeCon 第二次在中国举办.此次大会阿里共有 26 个技术演讲入选,并有两场沙龙活动,阿里云专家也与技术极客们也再次相聚.Kub ...