杰瑞科技汇

设置linux java环境变量

第一步:检查系统是否已安装 Java

在设置之前,首先要确认你的系统上是否已经安装了 Java,以及安装了哪个版本。

设置linux java环境变量-图1
(图片来源网络,侵删)
  1. 检查 Java 是否安装 打开终端,输入以下命令:

    java -version

    如果系统已安装 Java,它会显示 Java 的版本信息,如果提示 command not found,说明 Java 未安装或未配置环境变量。

  2. 查找 Java 的安装路径 java -version 有效,但你想知道它具体安装在哪里,可以使用 update-alternatives(Debian/Ubuntu)或 alternatives(CentOS/RHEL)命令:

    # 对于 Debian/Ubuntu 系统
    sudo update-alternatives --config java
    # 对于 CentOS/RHEL 系统
    sudo alternatives --config java

    这个命令会列出所有已安装的 Java 版本及其路径,记下你想要使用的那个版本的路径,/usr/lib/jvm/java-11-openjdk-amd64/bin/java

    设置linux java环境变量-图2
    (图片来源网络,侵删)

    如果上述命令没有结果,你也可以使用 which javawhereis java 来查找:

    which java  # 通常返回一个符号链接,如 /usr/bin/java
    ls -l /usr/bin/java # 查看符号链接指向的真实路径

第二步:安装 Java (如果未安装)

如果你的系统没有 Java,你需要先安装它,这里以安装 OpenJDK 为例,它是 Java 的开源实现。

对于 Ubuntu/Debian 系统:

# 更新软件包列表
sudo apt update
# 安装 OpenJDK 11 (你也可以选择其他版本,如 17, 8)
sudo apt install openjdk-11-jdk
# 验证安装
java -version
javac -version

对于 CentOS/RHEL/Fedora 系统:

# 对于 CentOS/RHEL 7/8
sudo yum install java-11-openjdk-devel
# 对于 Fedora 或较新的 RHEL/CentOS
sudo dnf install java-11-openjdk-devel
# 验证安装
java -version
javac -version

第三步:设置环境变量

这是最核心的一步,Java 主要依赖两个环境变量:

  1. JAVA_HOME: 指向 Java 安装目录的根路径,很多 Java 应用服务器(如 Tomcat、Jetty)和构建工具(如 Maven、Gradle)都需要这个变量来定位 JRE。
  2. PATH: 系统的命令搜索路径,我们需要将 Java 的可执行文件目录(如 bin)添加到 PATH 中,这样你才能在任何目录下直接使用 java, javac 等命令。

临时设置(仅当前终端会话有效)

这种方式适用于临时测试,不推荐长期使用。

设置linux java环境变量-图3
(图片来源网络,侵删)
# 假设你的 Java 安装根路径是 /usr/lib/jvm/java-11-openjdk-amd64
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
# 将 $JAVA_HOME/bin 追加到 PATH 变量中
export PATH=$PATH:$JAVA_HOME/bin
# 验证设置
echo $JAVA_HOME
echo $PATH
java -version

关闭终端后,这些设置就会失效。

为当前用户设置(推荐)

这种方式只会影响当前用户,不会影响系统中的其他用户,推荐个人开发者使用。

  1. 编辑用户配置文件 打开你的 shell 配置文件,对于大多数 Linux 是 ~/.bashrc~/.bash_profile,如果你使用的是 Zsh,则是 ~/.zshrc

    # 使用 vim 编辑器打开 ~/.bashrc 文件
    vim ~/.bashrc
  2. 添加环境变量 在文件末尾添加以下内容。请务必将 /usr/lib/jvm/java-11-openjdk-amd64 替换为你自己系统中 Java 的实际安装路径

    # 设置 JAVA_HOME
    export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
    # 将 Java 的 bin 目录添加到 PATH
    export PATH=$PATH:$JAVA_HOME/bin
  3. 保存并退出

    • vim 中,按 Esc 键,然后输入 wq,按回车。
  4. 使配置生效 你可以关闭当前终端然后重新打开一个新的,或者执行以下命令让配置立即生效:

    source ~/.bashrc
  5. 验证设置 在新的终端中验证:

    echo $JAVA_HOME
    java -version

    如果都正确显示,说明设置成功。

为所有用户设置(系统级)

如果你需要为系统中的所有用户配置 Java 环境,可以修改系统级别的配置文件。

  1. 编辑系统配置文件

    sudo vim /etc/profile

    或者更推荐 /etc/environment,因为它更简洁,且被所有 shell 会话读取。

  2. 添加环境变量/etc/profile 文件末尾添加:

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

    /etc/environment 文件中,格式稍有不同(不需要 export):

    JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
    PATH="$PATH:$JAVA_HOME/bin"
  3. 使配置生效 所有用户重新登录后,配置会自动生效,或者让所有当前登录的用户立即生效:

    # 对于 /etc/profile
    source /etc/profile
    # 对于 /etc/environment
    # 需要重启或重新登录才能对所有会话生效

第四步:处理多个 Java 版本(可选)

当你系统上安装了多个 Java 版本(如 Java 8 和 Java 11)时,你可能需要在不同项目之间切换使用。

update-alternatives (Debian/Ubuntu) 和 alternatives (CentOS/RHEL) 工具可以轻松管理这个。

  1. 注册可用的 Java 版本

    # 对于 Debian/Ubuntu
    sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1
    sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-8-openjdk-amd64/bin/java 2
    # 对于 CentOS/RHEL
    sudo alternatives --install /usr/bin/java java /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1
    sudo alternatives --install /usr/bin/java java /usr/lib/jvm/java-8-openjdk-amd64/bin/java 2

    (注意:如果你的 Java 是通过 aptyum 安装的,通常已经自动注册好了。)

  2. 切换 Java 版本 运行以下命令,然后根据提示选择你想要的版本:

    # 对于 Debian/Ubuntu
    sudo update-alternatives --config java
    # 对于 CentOS/RHEL
    sudo alternatives --config java

    选择后,java -version 的输出就会立即改变。JAVA_HOME 也会通过符号链接指向正确的版本。


总结与最佳实践

方法 配置文件 生效范围 优点 缺点
临时 终端命令 当前终端 快速,无需修改文件 关闭终端即失效
当前用户 ~/.bashrc, ~/.profile 当前用户 不影响其他用户,推荐个人使用 需要为新用户单独配置
所有用户 /etc/profile, /etc/environment 全局用户 一次配置,所有用户生效 影响所有用户,权限要求高

推荐流程:

  1. 使用 aptyum 安装你需要的 OpenJDK 版本。
  2. 使用 update-alternativesalternatives 管理和切换 Java 版本。
  3. 为当前用户设置环境变量:编辑 ~/.bashrc~/.zshrc,添加 JAVA_HOMEPATH,这是最灵活、最安全的方式。

完成以上步骤后,你的 Linux 系统就能正确识别和使用 Java 了。

分享:
扫描分享到社交APP
上一篇
下一篇