CentOS 7 环境下安装 JDK 1.8 及解决 wget 命令缺失问题
1. 引言
在 Linux 服务器运维和 Java 应用部署过程中,JDK(Java Development Kit)的安装是基础且关键的一步。同时,wget 作为常用的文件下载工具,在自动化脚本和软件包管理中扮演重要角色。
然而,在 CentOS 7 环境下,由于系统版本较旧,可能会遇到:
- JDK 1.8 安装困难(默认仓库可能不包含 OpenJDK 8)
wget
命令缺失(即使yum
提示已安装,但实际不可用)- DNS 解析或 YUM 镜像源问题(导致无法正常安装软件)
本文将详细介绍:
- 如何检查 CentOS 7 系统信息
- 安装 JDK 1.8 的几种方法
- 解决
wget
命令不可用的问题 - 修复 YUM/DNS 网络问题
2. 环境检查
在安装 JDK 或 wget
之前,应先确认系统版本和架构:
# 查看内核版本
uname -a
# 输出示例:Linux VM-12-8-centos 3.10.0-1160.99.1.el7.x86_64
# 检查系统发行版
cat /etc/centos-release
# 输出示例:CentOS Linux release 7.9.2009 (Core)
# 检查 CPU 架构
arch
# 输出示例:x86_64
如果系统是 CentOS 7,则默认包管理工具是 yum
(dnf
在 CentOS 8+ 才引入)。
3. 安装 JDK 1.8
CentOS 7 默认仓库可能不包含 OpenJDK 8,因此需要手动安装。
方法 1:安装 OpenJDK 8(推荐)
# 1. 安装 OpenJDK 8
sudo yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
# 2. 验证安装
java -version
# 输出示例:openjdk version "1.8.0_382"
方法 2:手动安装 Oracle JDK 8
如果必须使用 Oracle JDK:
# 1. 下载 JDK 8(需从 Oracle 官网获取)
wget https://download.oracle.com/otn/java/jdk/8u381-b09/jdk-8u381-linux-x64.tar.gz
# 2. 解压并安装
tar -xzf jdk-8u381-linux-x64.tar.gz
sudo mv jdk1.8.0_381 /usr/local/
# 3. 配置环境变量
echo 'export JAVA_HOME=/usr/local/jdk1.8.0_381' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
# 4. 验证
java -version
# 输出示例:java version "1.8.0_381"
方法 3:使用第三方仓库(如 AdoptOpenJDK)
如果默认仓库没有 OpenJDK 8:
# 1. 启用 AdoptOpenJDK 仓库
sudo yum install -y wget
wget https://adoptopenjdk.jfrog.io/adoptopenjdk/rpm/centos/7/x86_64/AdoptOpenJDK.repo
sudo mv AdoptOpenJDK.repo /etc/yum.repos.d/
# 2. 安装 AdoptOpenJDK 8
sudo yum install -y adoptopenjdk-8-hotspot
4. 解决 wget
命令缺失问题
在 CentOS 7 上,wget
可能被误删或未正确安装。
方法 1:重新安装 wget
# 强制重新安装
sudo yum reinstall -y wget
# 验证
wget --version
# 输出示例:GNU Wget 1.14
方法 2:修复 YUM 镜像源
如果 yum install wget
报错(如 DNS 解析失败):
# 1. 临时修复 DNS
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
echo "nameserver 114.114.114.114" | sudo tee -a /etc/resolv.conf
# 2. 更换为阿里云镜像
sudo sed -i 's/mirror.centos.org/mirrors.aliyun.com/g' /etc/yum.repos.d/CentOS-*.repo
sudo yum clean all
sudo yum makecache
# 3. 重新安装 wget
sudo yum install -y wget
方法 3:手动下载 RPM 安装
如果 yum
完全不可用:
# 下载 wget RPM(适用于 CentOS 7 x86_64)
curl -O http://mirror.centos.org/centos/7/os/x86_64/Packages/wget-1.14-18.el7_6.1.x86_64.rpm
# 手动安装
sudo rpm -ivh wget-1.14-18.el7_6.1.x86_64.rpm
5. 常见问题及解决方案
Q1:yum
报错 Could not resolve host
原因:DNS 解析失败。
解决:
# 临时修改 DNS
echo "nameserver 8.8.8.8" >> /etc/resolv.conf
Q2:wget
已安装但仍不可用
原因:可能被误删或路径未加入 PATH
。
解决:
# 查找 wget 位置
which wget
# 如果无输出,重新安装
sudo yum reinstall -y wget
Q3:JDK 安装后 java -version
不生效
原因:环境变量未正确配置。
解决:
# 检查 JAVA_HOME
echo $JAVA_HOME
# 如果为空,手动设置
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
6. 总结
本文介绍了在 CentOS 7 环境下:
如何安装 JDK 1.8(OpenJDK / Oracle JDK / AdoptOpenJDK)
解决 wget 命令缺失问题(重新安装 / 更换镜像源 / 手动 RPM 安装)
修复 YUM 和 DNS 问题(阿里云镜像 + Google DNS)