以下是 Linux 手动安装 Java 环境教程,已适配主流 Linux 发行版(CentOS、RHEL、Ubuntu、Debian、Fedora、Rocky Linux、AlmaLinux 等)。
Linux 手动安装 JDK 教程
一、前言
由于使用 yum、dnf 或 apt-get 等包管理器命令安装 OpenJDK 可能存在类库不全的问题,导致用户在安装后运行相关工具时可能报错。此外,不同发行版默认提供的 OpenJDK 版本不一致,可能存在符号链接混乱、多版本共存冲突等问题。因此,推荐采用手动解压安装的方式来安装 Oracle JDK,这种方式能获得完整的 JDK 组件,且适用于各种 Linux 发行版。
注意:从 Oracle 官网下载 JDK 需要注册 Oracle 账户。这些旧版本 JDK 仅用于调试旧系统问题,不推荐在生产环境使用,生产环境建议使用长期支持的 JDK 版本 17,21等。
二、准备工作
2.1 确定系统架构
在下载 JDK 之前,请先确认你的 Linux 系统架构:
uname -m
| 版本标识 | 架构 | 适用场景 | 是否推荐 |
|---|---|---|---|
| x64 / amd64 | 64位 | 所有现代 x86_64 CPU | ✅ 必须选择 |
| x86 / i586 | 32位 | 老旧32位系统(已淘汰) | ❌ 不兼容 |
绝大多数现代 Linux 系统均为 64 位架构,请选择 x64 版本的 JDK 安装包。
2.2 检查是否已安装 Java
为避免冲突,建议先检查系统是否已存在 Java 环境:
java -version
如果系统已自带 OpenJDK 且你想替换为 Oracle JDK,可以先卸载原有版本:
- CentOS / RHEL / Fedora / Rocky / AlmaLinux:
rpm -qa | grep java sudo rpm -e --nodeps <包名> - Ubuntu / Debian:
dpkg -l | grep java sudo apt-get remove <包名>
三、下载 JDK
3.1 获取安装包
进入 Oracle 官方网站下载合适的 JDK 版本:
- 官方下载地址:https://www.oracle.com/java/technologies/downloads/archive/
- 因官网注册流程较为繁琐,你也可以使用网盘等渠道获取安装包
百度网盘:
链接: https://pan.baidu.com/s/1Eln29E1ARFVOnM-sdxq2gg?pwd=heku
提取码: heku
夸克网盘:
链接:https://pan.quark.cn/s/1248a4493784?pwd=13nF
提取码:13nF
分享内容(按需下载):



3.2 下载版本说明
- 这里以
jdk-8u151-linux-x64.tar.gz为例 - 你下载的文件可能不是这个版本,这没有关系,只要后缀为
.tar.gz即可 - 请务必下载 Linux 版本的 JDK,不要下载 Windows 或 macOS 版本
3.3 上传安装包
将下载的 JDK 压缩包上传到 Linux 服务器。可以使用 scp、rsync 或 FTP 工具:
scp jdk-8u151-linux-x64.tar.gz root@你的服务器IP:/usr/java/
四、创建安装目录
在 /usr/ 目录下创建 Java 目录(你也可以选择 /usr/local/java 或 /opt 等常见位置):
[root@www ~]# mkdir /usr/java
[root@www ~]# cd /usr/java
将下载的文件 jdk-8u151-linux-x64.tar.gz 放入 /usr/java/ 目录下。
提示:不同 Linux 发行版的常见安装目录略有不同,但手动安装通常放在
/usr/local/或/usr/下。建议统一使用/usr/java/以便管理。
五、解压 JDK
在 /usr/java/ 目录下执行解压命令:
[root@www ~]# tar -zxvf jdk-8u151-linux-x64.tar.gz
解压完成后,会在 /usr/java/ 下生成一个类似 jdk1.8.0_151 的目录。
提示:解压后建议重命名目录以便管理,例如:
mv jdk1.8.0_151 jdk8
六、设置环境变量
6.1 编辑配置文件
使用 vim 编辑系统级环境变量配置文件(对所有用户生效):
[root@www ~]# vim /etc/profile
说明:
/etc/profile:系统级配置,对所有用户生效~/.bashrc或~/.zshrc:用户级配置,仅对当前用户生效- 推荐使用
/etc/profile以便所有用户都能使用 Java
vim 基本操作:
- 按
i进入编辑模式 - 编辑完成后按
ESC退出编辑模式 - 输入
:wq保存并退出 :w仅保存不退出
6.2 各版本 JDK 环境变量配置
📌 JDK 8 及以下版本
在 /etc/profile 文件末尾添加如下内容:
JAVA_HOME=/usr/java/jdk1.8.0_151
JRE_HOME=/usr/java/jdk1.8.0_151/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
注意:
JAVA_HOME和JRE_HOME请根据你的实际安装路径及 JDK 版本配置。
📌 JDK 9–10
JDK 9 开始不再提供独立的 JRE 目录,配置如下:
JAVA_HOME=/usr/java/jdk-9.0.4
CLASS_PATH=.:$JAVA_HOME/lib
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME CLASS_PATH PATH
📌 JDK 11 及以上版本
JDK 11 开始进一步简化,完全移除了 CLASS_PATH 和 JRE_HOME,配置如下:
JAVA_HOME=/usr/java/jdk-11.0.15
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME PATH
说明:从 Java 5 开始,
CLASSPATH默认就是当前路径,一般情况下不需要再单独设定。JDK 9+ 的类加载机制更加现代化,不再依赖CLASSPATH环境变量。
6.3 环境变量说明
| 变量名 | 作用 | JDK 8 | JDK 9–10 | JDK 11+ |
|---|---|---|---|---|
JAVA_HOME | JDK 安装根目录 | ✅ 必需 | ✅ 必需 | ✅ 必需 |
JRE_HOME | JRE 安装目录 | ✅ 推荐 | ❌ 不需要 | ❌ 不需要 |
CLASS_PATH | 类文件搜索路径 | ✅ 推荐 | ⚠️ 可选 | ❌ 不需要 |
PATH | 命令搜索路径 | ✅ 必需 | ✅ 必需 | ✅ 必需 |
七、使配置生效
执行以下命令让环境变量立即生效:
[root@www ~]# source /etc/profile
提示:如果使用用户级配置文件(如
~/.bashrc),则需要执行source ~/.bashrc。
八、验证安装
8.1 检查 Java 版本
[root@www ~]# java -version
如果显示 Java 版本信息,则说明 JDK 安装成功。例如:
java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)
8.2 检查编译器
[root@www ~]# javac -version
应显示与 java -version 一致的版本信息。
8.3 检查环境变量
[root@www ~]# echo $JAVA_HOME
/usr/java/jdk1.8.0_151
九、各主流 Linux 发行版补充说明
9.1 CentOS / RHEL
- 包管理器:
yum(CentOS 7 及以下)或dnf(CentOS 8+) - 常见 OpenJDK 安装路径:
/usr/lib/jvm/ - 手动安装推荐路径:
/usr/java/或/usr/local/java/
9.2 Ubuntu / Debian
- 包管理器:
apt-get - 常见 OpenJDK 安装路径:
/usr/lib/jvm/java-*-openjdk-amd64 - 手动安装推荐路径:
/usr/local/java/或/opt/
9.3 Fedora / Rocky Linux / AlmaLinux
- 包管理器:
dnf - 这些发行版与 RHEL 系高度兼容,安装步骤与 CentOS/RHEL 基本相同
- 手动安装推荐路径:
/usr/java/或/opt/
9.4 通用建议
无论使用哪种发行版,手动安装的步骤完全一致:
- 下载
.tar.gz安装包 - 解压到目标目录
- 配置环境变量
- 验证安装
唯一区别在于包管理器的命令不同,但手动安装方式绕过了包管理器,因此具有跨发行版的通用性。
十、多版本 JDK 共存与切换(可选)
如果需要同时安装多个 JDK 版本,可以:
-
将不同版本解压到不同目录,如:
/usr/java/jdk8/usr/java/jdk11/usr/java/jdk17
-
在
/etc/profile中通过修改JAVA_HOME来切换版本 -
或者使用
update-alternatives命令管理:sudo update-alternatives --config java
十一、常见问题排查
| 问题 | 可能原因 | 解决方法 |
|---|---|---|
java: command not found | 环境变量未生效或路径错误 | 检查 PATH 配置,执行 source /etc/profile |
JAVA_HOME 未设置 | 环境变量未正确导出 | 检查 export 语句是否正确 |
| 版本显示不正确 | 系统存在多个 Java 版本 | 使用 which java 查看实际调用的路径 |
| 权限不足 | 安装目录权限问题 | 使用 chmod 或 chown 调整权限 |
转载自CSDN-专业IT技术社区
原文链接:https://blog.csdn.net/qq_36115389/article/details/162063895



