首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何在 Linux 上安装 Java

如何在 Linux 上安装 Java

作者头像
用户1880875
修改于 2021-09-22 06:26:27
修改于 2021-09-22 06:26:27
3.6K00
代码可运行
举报
运行总次数:0
代码可运行

无论你运行的是哪种操作系统,通常都有几种安装应用程序的方法。有时你可能会在应用程序商店中找到一个应用程序,或者使用 Fedora 上的 DNF 或 Mac 上的 Brew 这样的软件包管理器进行安装,而有时你可能会从网站上下载可执行文件或安装程序。因为 Java 是这么多流行的应用程序的后端,所以最好了解安装它的不同方法。好消息是你有很多选择,本文涵盖了所有这些内容。

坏消息是 Java 太大,我说的不仅仅是文件大小。Java 是一种开放源代码语言和规范,这意味着从理论上讲,任何人都可以创建它的实现版本。这意味着,在安装任何东西之前,必须确定要安装的 Java 发行版。

我需要 JVM 还是 JRE 或者 JDK?

Java 大致分为两个下载类别。 Java 虚拟机(Java Virtual Machine)(JVM)是运行时组件;它是使 Java 应用程序能够在计算机上启动和运行的“引擎”。它包含在 Java 运行时环境(Java Runtime Environment)(JRE)中。

Java 开发工具包(Java Development Kit)(JDK)是一个开发工具包:你可以将其视为一个车库,修理工可以坐在那里进行调整、修理和改进。JDK 包含 Java 运行时环境(JRE)。

以下载来说,这意味着:

  • 如果你是希望运行 Java 应用程序的用户,则只需 JRE(包括了 JVM)。
  • 如果你是希望使用 Java 进行编程的开发人员,则需要 JDK(包括 JRE 库,而 JRE 库又包括 JVM)。 ### OpenJDK、IcedTea 和 OracleJDK 有什么不同?

太阳微系统(Sun Microsystems)被 Oracle 收购时,Java 是该交易的主要部分。幸运的是,Java 是一种开源技术,因此,如果你对 Oracle 维护该项目的方式不满意,则可以选择其他方法。Oracle 将专有组件与 Java 下载捆绑在一起,而 OpenJDK 项目是完全开源的。

IcedTea 项目本质上是 OpenJDK,但其目标是使用户在使用完全自由开源的工具时更容易构建和部署 OpenJDK。

(LCTT 译注:阿里巴巴也有一个它自己维护的 Open JDK 发行版“ 龙井(Dragonwell)”。以下引自其官网:“Alibaba Dragonwell 是一款免费的,生产就绪型 Open JDK 发行版,提供长期支持,包括性能增强和安全修复。……Alibaba Dragonwell 作为 Java 应用的基石,支撑了阿里经济体内所有的 Java 业务。Alibaba Dragonwell 完全兼容 Java SE 标准,……”)

我应该安装哪个 Java?

如果你对这些选择感到不知所措,那么简单的答案就是你应该安装的 Java 实现应该是最容易安装的那个。当应用程序告诉你需要 Java 12,但你的存储库中只有 Java 8 时,可以安装可以从可靠来源中找到的 Java 12 的任何实现。在 Linux 上,你可以一次安装几个不同版本的 Java,它们不会互相干扰。

如果你是需要选择使用哪个版本的开发人员,则应考虑所需的组件。如果选择 Oracle 的版本,请注意,软件包中包含专有的插件和字体,可能会影响你分发你的应用程序。在 IcedTea 或 OpenJDK 上进行开发是最安全的。

从存储库安装 OpenJDK?

现在,你已经知道要选择什么了,你可以使用软件包管理器搜索 OpenJDK 或 IcedTea,然后安装所需的版本。有些发行版使用关键字 latest 来指示最新版本,这通常是你要运行的应用程序所需要的。根据你使用的软件包管理器,你甚至可以考虑使用 grep 过滤搜索结果以仅包括最新版本。例如,在 Fedora 上:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo dnf search openjdk | grep latest | cut -f1 -d':'

java-latest-openjdk-demo.x86_64
java-openjdk.i686
java-openjdk.x86_64
java-latest-openjdk-jmods.x86_64
java-latest-openjdk-src.x86_64
java-latest-openjdk.x86_64
[...]

只有当你尝试运行的应用程序坚持要求你使用 Java 的旧版本时,你才应该看看 latest 之前的版本。

在 Fedora 或类似系统上安装 Java:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo dnf install java-latest-openjdk

如果你的发行版不使用 latest 标签,则可以使用其他关键字,例如 default。以下是在 Debian 上搜索 OpenJDK 的信息:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo apt search openjdk | less
default-jdk
  Standard Java development kit

default-jre
  Standard Java runtime

openjdk-11-jdk
  OpenJDK development kit (JDK)

[...]

在这种情况下,default-jre 软件包适合用户,而 default-jdk 则适合开发人员。

例如,要在 Debian 上安装 JRE:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo apt install default-jre

现在已安装好 Java。

你的存储库中可能有许多与 Java 相关的软件包。要搜索 OpenJDK,如果你是用户,则查找最新的 JRE 或 JVM,如果你是开发人员,则查找最新的 JDK。

从互联网上安装 Java

如果在存储库中找不到 JRE 或 JDK,或者找不到满足你需求的 JRE 或 JDK,则可以从互联网上下载开源的 Java 软件包。你可以在 openjdk.java.net 中找到需要手动安装的 tar 形式的 OpenJDK 下载文件,或者可以从 Azul 下载 tar 形式的 Zulu 社区版或其可安装的 RPM 或 DEB 软件包。

从 TAR 文件安装 Java

如果从 http://Java.net 或 Azul 下载 TAR 文件,则必须手动安装。这通常称为“本地”安装,因为你没有将 Java 安装到“全局”位置。你可以在 PATH 中选择一个合适的位置。

如果你不知道 PATH 中包含什么,请查看一下以找出:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/home/seth/bin

在此示例 PATH 中,位置 /usr/local/bin/home/seth/bin 是不错的选择。如果你是计算机上的唯一用户,那么你自己的家目录就很有意义。如果你的计算机上有很多用户,则最好选择一个通用位置,例如 /usr/local/opt

如果你无权访问需要 sudo 权限的 /usr/local 之类的系统级目录,则可以在你自己的家目录中创建一个本地 bin(意思是 “ 二进制(binary)”,而不是“ 垃圾箱(waste bin)”)或 Applications 文件夹:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ mkdir ~/bin

如果它不在你的 PATH 中,请将其添加到其中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ echo PATH=$PATH:$HOME/bin >> ~/.bashrc
$ source ~/.bashrc

最后,将压缩包解压缩到你选择的目录中。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ tar --extract --file openjdk*linux-x64_bin.tar.gz --directory=$HOME/bin

Java 现在安装好了。

从 RPM 或 DEB 安装 Java

如果从 http://Azul.com 下载 RPM 或 DEB 文件,则可以使用软件包管理器进行安装。

对于 Fedora、CentOS、RHEL 等,请下载 RPM 并使用 DNF 进行安装:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo dnf install zulu*linux.x86_64.rpm

对于 Debian、Ubuntu、Pop_OS 和类似发行版,请下载 DEB 软件包并使用 Apt 安装它:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo dpkg -i zulu*linux_amd64.deb

Java 现在安装好了。

用 alternatives 安装你的 Java 版本

一些应用程序是为特定版本的 Java 开发的,不能与其他任何版本一起使用。这种情况很少见,但确实会发生,在 Linux 上,你可以使用本地安装方法(请参阅上面“从 TAR 文件安装 Java”一节)或使用 alternatives 应用程序来解决此冲突。

alternatives 命令会查找 Linux 系统上安装的应用程序,并让你选择要使用的版本。有些发行版,例如 Slackware,不提供 alternatives 命令,因此你必须使用本地安装方法。在 Fedora、CentOS 和类似的发行版上,该命令是 alternatives。在 Debian、Ubuntu 和类似的系统上,该命令是 update-alternatives

要获取当前已安装在 Fedora 系统上的应用程序的可用版本列表:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ alternatives --list

在 Debian 上,你必须指定可供替代的应用程序:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ update-alternatives --list java

在 Fedora 上选择要使系统将哪个版本作为默认版本:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo alternatives --config java

在 Debian 上:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo updates-alternatives --config java

你可以根据需要运行的应用程序,根据需要更改默认的 Java 版本。

运行 Java 应用

Java 应用程序通常以 JAR 文件的形式分发。根据你安装 Java 的方式,你的系统可能已经为运行 Java 应用程序配置好了,这使你只需双击应用程序图标(或从应用程序菜单中选择它)即可运行。如果必须执行未与系统其余部分集成的本地 Java 安装,则可以直接从终端启动 Java 应用程序:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ java -jar ~/bin/example.jar &

Java 是个好东西

Java 是少数将跨平台开发放在首位的编程环境之一。没有什么比问一个应用程序是否能在你的平台上运行然后发现该应用程序是用 Java 编写要让人感到松一口气的了。它是如此简单,无论你是开发人员还是用户,你都可以摆脱任何平台上的焦虑。在桌面上拥抱 Java 应用程序,然后在所有桌面上运行它们吧。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Flink入门——基础知识,Linux安装,Docker安装
Flink还可以做机器学习,常用机器学习KMeans,LinearRegression,学习使用地址如下:
Kiba518
2024/02/23
2K0
Flink入门——基础知识,Linux安装,Docker安装
Linux 下安装配置 JDK7
下载地址:http://download.oracle.com/otn-pub/java/jdk/7u5-b06/jdk-7u5-linux-i586.tar.gz
东营浪人
2019/09/05
1.6K0
不同Linux发行版处理依赖冲突的核心差异?
Linux发行版在处理软件依赖冲突时,核心差异体现在包管理机制、依赖解决策略、版本控制方法以及生态系统设计理念上。以下是主要发行版(Debian/Ubuntu、RHEL/Fedora、Arch Linux)的对比及技术细节:
hide
2025/04/27
1960
不同Linux发行版处理依赖冲突的核心差异?
linux软件安装之详解apt、yum、dnf 和 pkg包安装
包管理系统除了安装软件外,它还提供了工具来更新已经安装的包。包存储库有助于确保你的系统中使用的代码是经过审查的,并且软件的安装版本已经得到了开发人员和包维护人员的认可。
菲宇
2021/12/06
3.8K0
在Debian 8上使用Apt-Get安装Java
安装Java的最简单方法是使用Debian打包的版本。具体来说,这将安装OpenJDK 8,这是最新推荐的版本。
圣人惠好可爱
2018/07/25
5.4K0
OpenJDK和Oracle JDK有什么区别和联系?
《Linux 7安装Oracle 11g打怪经历》的安装过程中,启动图形界面,需要指定jre路径,当时使用yum install jdk安装的,并不能解决问题,查看版本才知道他是OpenJDK,最终使用Oracle JDK,才解决的问题,那OpenJDK和Oracle JDK究竟有什么区别?
bisal
2020/03/13
13.9K1
如何在CentOS 8上安装Python
Python是世界上最受欢迎的编程语言之一。 凭借其简单易学的语法,Python是初学者和经验丰富的开发人员的流行选择。
用户8710806
2021/06/08
1.5K0
在Ubuntu系统中安装JDK 17并配置环境变量
如果您更喜欢Oracle JDK,可以下载适用于Ubuntu的二进制文件,然后安装它。可以在Oracle网站上找到JDK下载链接。
猫头虎
2024/04/08
4.1K0
Git 系列教程(2)- Git 安装
https://www.cnblogs.com/poloyy/p/12186802.html
小菠萝测试笔记
2021/05/18
9740
Git 系列教程(2)- Git 安装
Ubuntu20.04安装JDK「建议收藏」
Java JDK在linux系统有两个版本,一个开源版本Openjdk,还有一个oracle官方版本jdk,oracle JDK既可以通过添加ppa源命令行安装,也可以去官网下载jdk压缩包安装。下面分别记录一下这三种安装方式的步骤。 版本:
全栈程序员站长
2022/09/14
3K0
在 Ubuntu 和 Linux Mint 上快速安装 Java
Java 是世界上最古老、最流行的编程语言之一,凭借在多个平台上运行的能力,Java 可以在近30 亿台设备上运行,世界上最流行的移动操作系统,Android 依赖于 Java。
网络技术联盟站
2022/06/02
8.7K0
在 Ubuntu 和 Linux Mint 上快速安装 Java
如何在 Ubuntu 20.04 上安装 Java
Java 是世界上最流行的编程语言之一,被用来构建各种不同的应用和系统。Java 运行在所有的主流操作系统和设备上。你可以在你的笔记本,电话和游戏中发现使用 Java 开发的应用。
雪梦科技
2020/05/11
31.2K2
如何在 Ubuntu 20.04 上安装 Java
如何在 CentOS 8 上安装 Java
Java 有两种不同的实现,OpenJDK 和 Oracle Java。它们大部分都相同,除了 Oracle Java 拥有一些额外的商业特性。Oracle Java License 仅仅允许非商业使用,例如个人使用或者开发者使用。OpenJDK 是 Java 平台的开源实现。
雪梦科技
2020/05/11
6.8K0
如何在 CentOS 8 上安装 Java
如何在Debian 9上使用Apt安装Java
Java和JVM(Java的虚拟机)是许多软件所必需的,包括Tomcat,Jetty,Glassfish,Cassandra和Jenkins。
所有的酒都不如你
2018/11/05
4.5K0
如何在Ubuntu 18.04上安装Java
Java和JVM(Java的虚拟机)是许多软件所必需的,包括Tomcat,Jetty,Glassfish,Cassandra和Jenkins。
丰一川
2018/07/24
36.3K0
Ubuntu 18.04安装Java JDK8三种方式
Java JDK在Linux系统有两个版本,一个开源版本Openjdk,还有一个oracle官方版本jdk,oracle JDK既可以通过添加ppa源命令行安装,也可以去官网下载jdk压缩包安装。下面分别记录一下这三种安装方式的步骤
软测小生
2019/09/12
4.8K0
Ubuntu 18.04安装Java JDK8三种方式
ubuntu14.04下java安装及环境配置
这可以说是一篇迟到的文章,几个月前就说要写,结果拖到了现在。中间由于系统打不开等一系列原因,不得不重装了一遍,这次环境配置是出了点小问题,最后奉上。
WindCoder
2018/09/19
1.4K0
ubuntu14.04下java安装及环境配置
如何在Ubuntu 18.04上安装Java
在本教程中,我们将介绍在Ubuntu 18.04上安装和管理Java。 Java是用于构建不同类型的应用程序和系统的最流行的编程语言之一。
用户8710806
2021/06/08
7650
九.Linux软件包管理
大多数现代的类 Unix 操作系统都提供了一种中心化的机制用来搜索和安装软件。软件通常都是存放在存储库中,并通过包的形式进行分发。处理包的工作被称为包管理。包提供了操作系统的基本组件,以及共享的库、应用程序、服务和文档。
对弈
2019/09/04
2.1K0
如何在 CentOS 8 上安装 Python
Python 是世界上最流行的编程语言之一。简单易学的语法,使得 Python 成为初学者和有经验的开发者一个公认的选择。
雪梦科技
2020/05/11
10K0
如何在 CentOS 8 上安装 Python
相关推荐
Flink入门——基础知识,Linux安装,Docker安装
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验