转自:https://www.howtoing.com/how-to-install-java-with-apt-get-on-ubuntu-16-04/

的Java和JVM(Java的虚拟机)是广泛使用的并且对多种软件所需。本文将指导您完成安装和使用'的apt-GET`管理不同版本的Java进程。

介绍

Java和JVM(Java的虚拟机)被广泛使用并且是许多种类的软件所需要的。 本文将指导您完成安装和使用管理不同版本的Java过程apt-get 。

先决条件

要遵循本教程,您需要:

安装默认JRE / JDK

安装Java的最简单的选择是使用与Ubuntu一起打包的版本。 具体来说,这将安装OpenJDK 8,最新和推荐的版本。

首先,更新包索引。

sudo apt-get update

接下来,安装Java。 具体来说,此命令将安装Java运行时环境(JRE)。

sudo apt-get install default-jre

还有另一个默认的Java安装,称为JDK(Java开发工具包)。 JDK通常只需要如果你要编译Java程序,或者如果使用Java的软件特别需要它。

JDK确实包含JRE,因此如果安装JDK而不是JRE,除了较大的文件大小,则没有缺点。

您可以使用以下命令安装JDK:

sudo apt-get install default-jdk

安装Oracle JDK

如果要安装Oracle JDK,这是Oracle分发的正式版本,则需要再执行几个步骤。 如果您需要Java 6或7,这在默认的Ubuntu 16.04存储库(不推荐)中不可用,此安装方法也可用。

首先,添加Oracle的PPA,然后更新您的软件包存储库。

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update

然后,根据要安装的版本,执行以下命令之一:

Oracle JDK 6或7

这些都是非常老的Java版本,分别在2013年2月和2015年4月达到使用寿命。 它不推荐使用它们,但它们可能仍然需要一些程序。

要安装JDK 6,请使用以下命令:

sudo apt-get install oracle-java6-installer

要安装JDK 7,请使用以下命令:

sudo apt-get install oracle-java7-installer

Oracle JDK 8

这是Java在编写时的最新稳定版本,以及要安装的推荐版本。 您可以使用以下命令:

sudo apt-get install oracle-java8-installer

Oracle JDK 9

这是一个开发人员预览,一般版本计划于2017年3月。不建议您使用此版本,因为可能仍存在安全问题和错误。 有关于Java 9的更多信息官JDK 9网站 。

要安装JDK 9,请使用以下命令:

sudo apt-get install oracle-java9-installer

管理Java

在一个服务器上可以有多个Java安装。 您可以配置版本是通过使用命令行使用默认的update-alternatives ,它管理这些符号链接用于不同的命令。

sudo update-alternatives --config java

输出将类似于以下内容。 在这种情况下,这是上面提到的所有Java版本安装的输出。

输出
There are 5 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
* 0 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 auto mode
1 /usr/lib/jvm/java-6-oracle/jre/bin/java 1 manual mode
2 /usr/lib/jvm/java-7-oracle/jre/bin/java 2 manual mode
3 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
4 /usr/lib/jvm/java-8-oracle/jre/bin/java 3 manual mode
5 /usr/lib/jvm/java-9-oracle/bin/java 4 manual mode Press <enter> to keep the current choice[*], or type selection number:

您现在可以选择要用作默认值的号码。 这也可以用于其他的Java命令,如编译器(完成javac )时,文档生成(javadoc ),所述JAR签名的工具( jarsigner ),等等。 您可以使用以下命令,填写要自定义的命令。

sudo update-alternatives --config command

设置JAVA_HOME环境变量

许多程序,比如Java服务器,请使用JAVA_HOME环境变量来确定Java安装位置。 要设置这个环境变量,我们首先需要找出Java的安装位置。 您可以通过执行与上一节中相同的命令来执行此操作:

sudo update-alternatives --config java

路径从您首选的安装,然后打开复制/etc/environment使用nano或您喜爱的文本编辑器。

sudo nano /etc/environment

在此文件的末尾,添加以下行,确保用您自己复制的路径替换突出显示的路径。

/ etc / environment
JAVA_HOME="/usr/lib/jvm/java-8-oracle"

保存并退出文件,然后重新加载。

source /etc/environment

现在可以通过执行以下命令来测试是否已设置环境变量:

echo $JAVA_HOME

这将返回您刚才设置的路径。

结论

您现在已经安装了Java,并知道如何管理它的不同版本。 您现在可以安装在Java上运行的软件,如Tomcat,Jetty,Glassfish,Cassandra或Jenkins。

在Ubuntu 16.04如何安装Java使用apt-get的的更多相关文章

  1. Ubuntu 16.04 LTS 安装 Nginx/PHP 5.6/MySQL 5.7 (LNMP) 与Laravel

    Ubuntu 16.04 LTS 安装 Nginx/PHP 5.6/MySQL 5.7 (LNMP) 与Laravel 1.MySQL安装[安装 MariaDB]MariaDB是MySQL的一个分支首 ...

  2. Ubuntu 16.04 LTS安装 TeamViewer

    Ubuntu 16.04 LTS安装 TeamViewer     64位Ubuntu 16.04系统需要添加32位架构支持,命令如下. sudo dpkg --add-architecture i3 ...

  3. Linux Ubuntu 16.04 初次安装使用总结zzz

    装了两天的ubuntu系统终于算是勉强能用了,来来回回装了有三四次,期间出了各种各样的毛病.但是还是被我的Google大法给治好了.为了装这个系统,算是耗了两天的时间,啥事情都没干,干耗在这上面了.所 ...

  4. Ubuntu 16.04 RabbitMq 安装与运行(安装篇)

    Ubuntu 16.04 RabbitMq 安装与运行(安装篇) 2018年08月15日 15:05:24 我跟吴彦祖四六开 阅读数:1966   前言 目前公司用阿里云 + redis 的方式实现的 ...

  5. 详细介绍Ubuntu 16.04系统环境安装Docker CE容器的过程

    由于项目的需要,我们在很多软件配置环境中需要用到Docker容器,这个时候我们可以用自己的VPS主机搭建.在这篇文章中,笔者将会利用Ubuntu 16.04系统环境安装Docker CE容器的过程.如 ...

  6. Ubuntu 16.04 LTS 安装 miniconda

    Ubuntu 16.04 LTS 安装 miniconda 下载 miniocnda 的 bash 文件下载链接 https://conda.io/miniconda.html ,我选择的是 64-b ...

  7. 如何在Ubuntu 16.04上安装配置Redis

    如何在Ubuntu 16.04上安装配置Redis Redis是一个内存中的键值存储,以其灵活性,性能和广泛的语言支持而闻名.在本指南中,我们将演示如何在Ubuntu 16.04服务器上安装和配置Re ...

  8. 怎样在Ubuntu 14.04中安装Java(转)

    想知道如何在Ubuntu 14.04中安装Java?安装Java肯定是安装Ubuntu 14.04后首先要做的几件事情之一(见http://www.linuxidc.com/Linux/2014-04 ...

  9. 在 Ubuntu 16.04上安装 vsFTPd

    在 Ubuntu 16.04上安装 vsFTPd Ubuntu vsFTPd 关于 vsFTPd vsFTPd 代表 Very Secure File Transfer Protocol Daemon ...

随机推荐

  1. html(对php也有效)页面自动刷新和跳转(简单版本)

    <html>    <head><title>html页面自动刷新和跳转</title><meta http-equiv="Refres ...

  2. object references an unsaved transient instance - save the transient instance before flushing: com.jspxcms.core.domain.ScTeam

    object references an unsaved transient instance - save the transient instance before flushing: com.j ...

  3. BZOJ1113 Poi2008 海报PLA【单调栈】【水】

    BZOJ1113 Poi2008 海报PLA Description N个矩形,排成一排. 现在希望用尽量少的矩形海报Cover住它们. Input 第一行给出数字N,代表有N个矩形.N在[1,250 ...

  4. 基于 task 为 VSCode 添加自定义的外部命令

    我们有很多全局的工具能在各处使用命令行调用,针对某个仓库特定的命令可以放到仓库中.不过,如果能够直接为顺手的文本编辑器添加自定义的外部命令,那么执行命令只需要简单的快捷键即可,不需要再手工敲了.   ...

  5. 关于MySQL 通用查询日志和慢查询日志分析

    MySQL中的日志包括:错误日志.二进制日志.通用查询日志.慢查询日志等等.这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志. 1)通用查询日志:记录建立的客户端连接和执行的语句. 2)慢查 ...

  6. bzoj 5120 [2017国家集训队测试]无限之环——网络流

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=5120 旋转的话相当于去掉一个插头.新增一个插头,所以在这两个插头之间连边并带上费用即可. 网 ...

  7. mysql插入中文出错,提示1366 - Incorrect

    提示这样 1366 - Incorrect string value: '\xC0\x86' for column 'platecl' at row 1 是因为编码的问题(在这儿我们需要的是gbk,当 ...

  8. nagios(centreon)监控Linux日志

    1 将check_log3.pl下载后放到客户端服务器的插件文件夹[root@SSAVL2475 libexec]# cp /tmp/check_log3.pl  /usr/local/nagios/ ...

  9. 微软Azure平台 cloud service动态申请证书并绑定证书碰到的坑

    我们有一个saas平台 部分在azure的cloud service 使用lets encrypt来申请证书.每一个商家申请域名之后就需要通过Lets encrypt来得到证书并绑定证书. 主要碰到的 ...

  10. socket执行accept函数时没有进入阻塞状态,而是陷入了无限循环

    接着前两天继续看<VC深入详解>的网络编程部分,这次我快速看了遍书上的函数以及套接字C-S模型,然后自己从0开始写了个简单的服务端,结果发现一直在输出 而明明我还没有写客户端程序,由于打印 ...