前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。
介绍
Java 和 JVM(Java 虚拟机)是许多软件的必备组件,包括 Tomcat、Jetty、Glassfish、Cassandra 和 Jenkins。
在本指南中,您将使用 apt
安装各种版本的 Java 运行环境(JRE)和 Java 开发工具包(JDK)。您将安装 OpenJDK 以及来自 Oracle 的官方软件包。然后,您将选择要在项目中使用的版本。完成后,您将能够使用 JDK 开发软件或使用 Java 运行时来运行软件。
先决条件
要按照本教程操作,您需要:
- 通过遵循 Debian 9 初始服务器设置指南教程设置的一个 Debian 9 服务器,包括一个具有
sudo
访问权限和防火墙的非根用户。
安装默认的 JRE/JDK
安装 Java 的最简单选项是使用 Debian 打包的版本。默认情况下,Debian 9 包含 OpenJDK,这是 JRE 和 JDK 的开源变体。
此软件包将安装兼容 Java 8 的 OpenJDK 版本 1.8。Java 8 是当前的长期支持版本,尽管公共维护将于 2019 年 1 月结束,但仍得到广泛支持。
要安装此版本,首先更新软件包索引:
sudo apt update
接下来,检查 Java 是否已安装:
java -version
如果 Java 尚未安装,您将看到以下输出:
-bash: java: command not found
执行以下命令以安装 OpenJDK:
sudo apt install default-jre
此命令将安装 Java 运行环境(JRE)。这将允许您运行几乎所有的 Java 软件。
使用以下命令验证安装:
java -version
您将看到以下输出:
openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-8u181-b13-1~deb9u1-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
您可能需要 Java 开发工具包(JDK)以及 JRE,以便编译和运行一些特定的基于 Java 的软件。要安装 JDK,请执行以下命令,该命令还将安装 JRE:
sudo apt install default-jdk
通过检查 Java 编译器 javac
的版本来验证 JDK 是否已安装:
javac -version
您将看到以下输出:
javac 1.8.0_181
接下来,让我们看看如何安装 Oracle 的官方 JDK 和 JRE。
安装 Oracle JDK
如果您想安装由 Oracle 分发的官方版本 Oracle JDK,您需要为您想要使用的版本添加一个新的软件包存储库。
首先,安装 software-properties-common
软件包,该软件包添加了 apt-get-repository
命令,您将使用该命令将额外的存储库添加到您的源列表中。
使用以下命令安装 software-properties-common
:
sudo apt install software-properties-common
安装了此软件包后,您可以安装 Oracle 的 Java。
安装 Oracle Java 8
要安装 Java 8,即当前的长期支持版本,首先添加其软件包存储库:
sudo add-apt-repository ppa:webupd8team/java
当您添加存储库时,您将看到如下消息:
[secondary_label output]
Oracle Java (JDK) Installer (automatically downloads and installs Oracle JDK8). There are no actual Java files in this PPA.
Important -> Why Oracle Java 7 And 6 Installers No Longer Work: http://www.webupd8.org/2017/06/why-oracle-java-7-and-6-installers-no.html
Update: Oracle Java 9 has reached end of life: http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html
The PPA supports Ubuntu 18.04, 17.10, 16.04, 14.04 and 12.04.
More info (and Ubuntu installation instructions):
- for Oracle Java 8: http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html
Debian installation instructions:
- Oracle Java 8: http://www.webupd8.org/2014/03/how-to-install-oracle-java-8-in-debian.html
For Oracle Java 10, see a different PPA: https://www.linuxuprising.com/2018/04/install-oracle-java-10-in-ubuntu-or.html
More info: https://launchpad.net/~webupd8team/+archive/ubuntu/java
Press [ENTER] to continue or ctrl-c to cancel adding it
按下 ENTER
继续。它将尝试导入一些 GPG 签名密钥,但它将无法找到任何有效的密钥:
gpg: keybox '/tmp/tmpgt9wdvth/pubring.gpg' created
gpg: /tmp/tmpgt9wdvth/trustdb.gpg: trustdb created
gpg: key C2518248EEA14886: public key "Launchpad VLC" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: imported: 1
gpg: no valid OpenPGP data found.
执行以下命令手动为存储库源添加 GPG 密钥:
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C2518248EEA14886
然后更新您的软件包列表:
sudo apt update
软件包列表更新后,安装 Java 8:
sudo apt install oracle-java8-installer
您的系统将从 Oracle 下载 JDK,并要求您接受许可协议。接受协议后,JDK 将安装。
安装 Oracle Java 10
要安装 Oracle Java 10,首先添加其软件源:
sudo add-apt-repository ppa:linuxuprising/java
你会看到以下消息:
Oracle Java 10 安装程序
由于许可问题,Java 二进制文件不托管在此 PPA 中。该 PPA 中的软件包会下载并安装 Oracle Java 10(JDK 10),因此需要一个可用的互联网连接。
此 PPA 中的软件包基于 WebUpd8 Oracle Java PPA 软件包:https://launchpad.net/~webupd8team/+archive/ubuntu/java
为 https://www.linuxuprising.com/ 的用户创建
问题或建议?在此处留下评论:https://www.linuxuprising.com/2018/04/install-oracle-java-10-in-ubuntu-or.html
更多信息:https://launchpad.net/~linuxuprising/+archive/ubuntu/java
按 [ENTER] 继续或按 ctrl-c 取消添加
按下 ENTER
键继续安装。与 Java 8 一样,你会看到关于无效签名密钥的消息:
gpg: keybox '/tmp/tmpvuqsh9ui/pubring.gpg' created
gpg: /tmp/tmpvuqsh9ui/trustdb.gpg: trustdb created
gpg: key EA8CACC073C3DB2A: public key "Launchpad PPA for Linux Uprising" imported
gpg: Total number processed: 1
gpg: imported: 1
gpg: no valid OpenPGP data found.
执行以下命令导入必要的密钥:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EA8CACC073C3DB2A
然后更新软件包列表:
sudo apt update
软件包列表更新后,安装 Java 10:
sudo apt install oracle-java10-installer
系统将从 Oracle 下载 JDK,并要求你接受许可协议。接受协议后,JDK 将安装。
现在让我们看看如何选择要使用的 Java 版本。
管理 Java
你可以在一个服务器上安装多个 Java 版本。你可以使用 update-alternatives
命令配置命令行上的默认版本。
sudo update-alternatives --config java
如果你在本教程中安装了所有 Java 版本,输出将如下所示:
There are 3 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-10-oracle/bin/java 1091 auto mode
* 1 /usr/lib/jvm/java-10-oracle/bin/java 1091 manual mode
2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
3 /usr/lib/jvm/java-8-oracle/jre/bin/java 1081 manual mode
Press <enter> to keep the current choice[*], or type selection number:
选择与要使用的 Java 版本相关联的数字,以将其用作默认版本,或按 ENTER
保留当前设置。
你还可以对其他 Java 命令执行此命令,例如编译器(javac
):
sudo update-alternatives --config javac
可以对其他命令运行此命令,例如 keytool
、javadoc
和 jarsigner
。
接下来让我们设置 JAVA_HOME
环境变量。
设置 JAVA_HOME
环境变量
许多使用 Java 编写的程序使用 JAVA_HOME
环境变量来确定 Java 安装位置。
要设置此环境变量,首先确定 Java 安装位置。再次使用 update-alternatives
命令:
sudo update-alternatives --config java
此命令显示每个 Java 安装以及其安装路径:
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-10-oracle/bin/java 1091 auto mode
* 1 /usr/lib/jvm/java-10-oracle/bin/java 1091 manual mode
2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
3 /usr/lib/jvm/java-8-oracle/jre/bin/java 1081 manual mode
在这种情况下,安装路径如下:
- Oracle Java 10 位于
/usr/lib/jvm/java-10-oracle/jre/bin/java
。 - Oracle Java 8 位于
/usr/lib/jvm/java-8-oracle/jre/bin/java
。 - OpenJDK 8 位于
/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
。
这些路径显示了 java
可执行文件的路径。
复制你首选安装的路径,不包括末尾的 bin/java
部分。然后使用 nano
或你喜欢的文本编辑器打开 /etc/environment
:
sudo nano /etc/environment
在文件末尾添加以下行,确保用你自己复制的路径替换高亮显示的路径:
JAVA_HOME="/usr/lib/jvm/java-8-oracle/jre"
修改此文件将为系统上的所有用户设置 JAVA_HOME
路径。
保存文件并退出编辑器。
现在重新加载此文件以将更改应用于当前会话:
source /etc/environment
验证环境变量是否已设置:
echo $JAVA_HOME
你将看到你刚刚设置的路径:
/usr/lib/jvm/java-8-oracle/jre
其他用户需要执行命令 source /etc/environment
或注销并重新登录以应用此设置。
结论
在本教程中,您安装了多个版本的Java,并学会了如何管理它们。现在,您可以安装在Java上运行的软件,比如Tomcat、Jetty、Glassfish、Cassandra或Jenkins。