跳转至

在 Linux 上安装 Java 17:从基础到最佳实践

简介

Java 是一种广泛应用于各种软件开发领域的编程语言,Java 17 作为长期支持(LTS)版本,带来了许多新特性和性能优化。在 Linux 系统上安装 Java 17 是许多开发者和系统管理员需要掌握的技能。本文将详细介绍在 Linux 上安装 Java 17 的基础概念、使用方法、常见实践以及最佳实践,帮助读者轻松完成安装并高效使用。

目录

  1. 基础概念
  2. 使用方法
    • 基于包管理器安装
    • 手动安装
  3. 常见实践
    • 设置环境变量
    • 验证安装
  4. 最佳实践
    • 选择合适的安装方式
    • 管理多个 Java 版本
  5. 小结
  6. 参考资料

基础概念

Java 17 是 Java 编程语言的一个版本,它在语法、性能、安全性等方面都有一定的改进。长期支持版本意味着它会在较长时间内获得官方的维护和更新,为企业级应用和长期项目提供稳定的运行环境。

在 Linux 系统中,安装 Java 17 可以通过不同的方式实现,主要分为基于系统包管理器和手动安装两种。包管理器安装方式简单快捷,适合大多数用户;手动安装则更加灵活,适合对安装过程有更高要求的用户。

使用方法

基于包管理器安装

不同的 Linux 发行版有不同的包管理器,以下以常见的几个发行版为例:

Ubuntu

  1. 更新系统包列表:
sudo apt update
  1. 安装 Java 17:
sudo apt install openjdk-17-jdk

Fedora

  1. 更新系统包列表:
sudo dnf update
  1. 安装 Java 17:
sudo dnf install java-17-openjdk-devel

CentOS

  1. 首先,需要启用 EPEL 仓库(Extra Packages for Enterprise Linux):
sudo yum install epel-release
  1. 更新系统包列表:
sudo yum update
  1. 安装 Java 17:
sudo yum install java-17-openjdk-devel

手动安装

  1. 下载 Java 17 安装包 从 Oracle 官方网站或 AdoptOpenJDK 等开源镜像站点下载适合你 Linux 系统的 Java 17 安装包。例如,从 AdoptOpenJDK 下载的安装包通常是一个压缩文件,如 openjdk-17_linux-x64_bin.tar.gz

  2. 解压安装包 将下载的压缩包解压到你希望安装 Java 的目录,例如 /usr/local/java

sudo mkdir -p /usr/local/java
sudo tar -zxvf openjdk-17_linux-x64_bin.tar.gz -C /usr/local/java
  1. 设置环境变量 编辑 ~/.bashrc 文件,添加以下内容:
export JAVA_HOME=/usr/local/java/jdk-17.0.xx
export PATH=$JAVA_HOME/bin:$PATH

其中 xx 是具体的 Java 17 版本号。保存文件后,执行以下命令使设置生效:

source ~/.bashrc

常见实践

设置环境变量

环境变量对于 Java 的正常运行非常重要。除了上述手动安装时设置 JAVA_HOMEPATH 环境变量外,在基于包管理器安装时,也可以检查和确认环境变量是否正确设置。例如,在 Ubuntu 上安装后,可以通过以下命令检查 JAVA_HOME

echo $JAVA_HOME

如果没有输出,需要手动设置。编辑 ~/.bashrc 文件,添加如下内容:

export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH

保存并执行 source ~/.bashrc 使设置生效。

验证安装

安装完成后,可以通过以下命令验证 Java 17 是否正确安装:

java -version

如果安装成功,将会输出类似以下内容:

openjdk version "17.0.xx" 202x-xx-xx
OpenJDK Runtime Environment (build 17.0.xx+xx)
OpenJDK 64-Bit Server VM (build 17.0.xx+xx, mixed mode, sharing)

最佳实践

选择合适的安装方式

如果希望快速安装并获得系统级的支持和更新,基于包管理器安装是最佳选择。这种方式会自动处理依赖关系,并且在系统更新时可以方便地更新 Java 版本。

如果需要对安装过程有更多控制,例如安装特定版本或自定义安装路径,手动安装更为合适。手动安装也适合在没有网络连接或包管理器不可用的情况下进行。

管理多个 Java 版本

在开发过程中,可能需要同时使用多个 Java 版本。可以通过工具如 jenvsdkman 来管理多个 Java 版本。

sdkman 为例: 1. 安装 sdkman

curl -s "https://get.sdkman.io" | bash
  1. 重启终端或执行以下命令使 sdkman 生效:
source "$HOME/.sdkman/bin/sdkman-init.sh"
  1. 安装不同版本的 Java:
sdk install java 17.0.xx-openjdk
sdk install java 11.0.xx-openjdk
  1. 切换 Java 版本:
sdk use java 17.0.xx-openjdk

小结

在 Linux 上安装 Java 17 可以通过基于包管理器或手动安装两种方式实现。基于包管理器安装简单快捷,适合大多数用户;手动安装则更灵活,适合有特定需求的用户。安装完成后,正确设置环境变量并验证安装是确保 Java 17 正常运行的关键。同时,选择合适的安装方式和管理多个 Java 版本的方法可以提高开发效率。

参考资料