在CentOS系统中安装Java 1.8是许多开发者和系统管理员常见的任务,尤其是在运行需要旧版本Java的应用程序或服务时,本文将详细介绍在CentOS 7和CentOS 8系统中安装Java 1.8的完整步骤,包括环境变量配置、验证安装以及常见问题的解决方法。

准备工作
在开始安装之前,建议确保系统已更新到最新状态,打开终端,执行以下命令更新系统包:
sudo yum update -y
对于CentOS 8系统,由于yum已被dnf取代,需使用:
sudo dnf update -y
检查系统是否已安装其他版本的Java,避免冲突:
java -version
如果已安装其他版本,需先卸载或调整环境变量。
使用Yum/DNF仓库安装Java 1.8
CentOS官方仓库默认提供OpenJDK 1.8,但部分版本可能需要启用EPEL仓库,以下是具体步骤:
安装OpenJDK 1.8
对于CentOS 7:
sudo yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel -y
对于CentOS 8:
sudo dnf install java-1.8.0-openjdk java-1.8.0-openjdk-devel -y
安装完成后,验证Java版本:
java -version javac -version
若输出显示Java 1.8,则安装成功。
配置JAVA_HOME环境变量
部分应用程序需要明确设置JAVA_HOME变量,查找Java安装路径:
which java readlink -f $(which java)
假设输出为/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-1.el7_9.x86_64/jre/bin/java,则实际路径为/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-1.el7_9.x86_64。

编辑/etc/profile文件:
sudo vim /etc/profile
在文件末尾添加以下内容:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-1.el7_9.x86_64 export PATH=$PATH:$JAVA_HOME/bin
保存后,使配置生效:
source /etc/profile
验证环境变量:
echo $JAVA_HOME
手动安装Oracle JDK 1.8
如果需要Oracle JDK(非OpenJDK),需通过手动下载安装包实现:
下载JDK 1.8
访问Oracle官网下载页面,选择适合系统的.tar.gz包(如Linux x64),使用wget下载:
wget https://download.oracle.com/otn/java/jdk/8u321-b07/jdk-8u321-linux-x64.tar.gz?AuthParam=xxx
(注:AuthParam需替换为实际下载链接中的参数)
解压并移动到安装目录
创建目录并解压:
sudo mkdir -p /usr/local/java sudo tar -zxvf jdk-8u321-linux-x64.tar.gz -C /usr/local/java/
重命名目录以便管理:
sudo mv /usr/local/java/jdk1.8.0_321 /usr/local/java/oracle-jdk1.8
配置环境变量
编辑/etc/profile,添加:
export JAVA_HOME=/usr/local/java/oracle-jdk1.8 export PATH=$PATH:$JAVA_HOME/bin
生效配置并验证:

source /etc/profile java -version
多版本Java管理
若系统需同时管理多个Java版本,可使用update-alternatives工具:
-
注册已安装的Java版本:
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-1.el7_9.x86_64/bin/java 1 sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-1.el7_9.x86_64/bin/javac 1
-
切换Java版本:
sudo update-alternatives --config java sudo update-alternatives --config javac
根据提示选择版本编号即可。
常见问题解决
-
问题:
yum install提示“没有可用软件包”
解决:对于CentOS 8,需启用EPEL仓库:sudo dnf install epel-release -y
-
问题:Java命令无法识别
解决:检查PATH环境变量是否包含$JAVA_HOME/bin,或重新执行source /etc/profile。
FAQs
Q1: 如何确认Java 1.8是否为默认版本?
A1: 执行java -version查看输出,若显示版本号为1.8.x,则默认已设置,若需切换,使用update-alternatives --config java选择对应版本。
Q2: 卸载Java 1.8的命令是什么?
A2: 对于OpenJDK,执行sudo yum remove java-1.8.0-openjdk java-1.8.0-openjdk-devel -y(CentOS 7)或sudo dnf remove java-1.8.0-openjdk java-1.8.0-openjdk-devel -y(CentOS 8),对于手动安装的Oracle JDK,删除安装目录即可:sudo rm -rf /usr/local/java/oracle-jdk1.8。