在Linux系统中安装JDK1.8是Java开发和运行Java应用的基础步骤,本文将详细介绍通过包管理器、手动安装及SDKMAN工具三种主流方式完成安装,并涵盖环境配置、验证及常见问题处理。
安装前准备
在安装JDK1.8前,需确认系统环境并清理旧版本Java(避免冲突)。
- 检查系统信息:
- 执行
uname -a
查看系统内核及发行版(如Ubuntu、CentOS等)。 - 执行
cat /etc/os-release
确认具体发行版(如Ubuntu 20.04、CentOS 7)。
- 执行
- 检查是否已安装Java:
java -version # 查看Java版本 javac -version # 查看Java编译器版本
若已安装旧版本Java,可通过以下命令卸载(以Ubuntu为例):
sudo apt remove --purge openjdk-* # 卸载OpenJDK sudo yum remove java-1.* # CentOS/RHEL卸载命令
通过包管理器安装(推荐新手)
不同Linux发行版使用包管理器(如apt
、yum
/dnf
)安装JDK1.8,操作简单且自动依赖处理。
基于Debian/Ubuntu系统(使用apt
)
- 更新软件包列表:
sudo apt update
- 安装OpenJDK 1.8(默认为OpenJDK,Oracle JDK需手动下载):
sudo apt install openjdk-8-jdk
- 验证安装:
java -version # 显示"openjdk version 1.8.0_xxx" javac -version # 显示"javac 1.8.0_xxx"
基于RHEL/CentOS系统(使用yum
/dnf
)
- CentOS 7及以下(使用
yum
):sudo yum install java-1.8.0-openjdk-devel # -devel包含javac等开发工具
- CentOS 8+(使用
dnf
):sudo dnf install java-1.8.0-openjdk-devel
- 验证安装:同Ubuntu系统。
不同发行版包管理器安装命令对比
发行版 | 包管理器 | 安装命令 | 说明 |
---|---|---|---|
Ubuntu/Debian | apt | sudo apt install openjdk-8-jdk |
安装OpenJDK,含开发工具 |
CentOS 7 | yum | sudo yum install java-1.8.0-openjdk-devel |
需确保yum源配置正确 |
CentOS 8+ | dnf | sudo dnf install java-1.8.0-openjdk-devel |
dnf为CentOS 8+默认包管理器 |
手动安装Oracle JDK1.8(需特定版本时)
若需Oracle JDK(如商业项目要求),需从官网下载压缩包手动安装。
下载JDK1.8安装包
- 访问Oracle JDK官网(https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html),选择对应系统版本(如Linux x64压缩包)。
- 使用
wget
下载(以jdk-8u291-linux-x64.tar.gz为例):wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/8u291-b10/jdk-8u291-linux-x64.tar.gz
注:需添加Cookie参数绕过下载许可验证。
创建安装目录并解压
- 创建JDK安装目录(建议
/usr/local/java
):sudo mkdir -p /usr/local/java
- 解压下载的压缩包到该目录:
sudo tar -zxvf jdk-8u291-linux-x64.tar.gz -C /usr/local/java/
- 重命名解压目录(方便管理):
sudo mv /usr/local/java/jdk1.8.0_291 /usr/local/java/jdk1.8
配置环境变量
- 编辑
/etc/profile
文件(全局配置,所有用户生效):sudo vim /etc/profile
- 在文件末尾添加以下内容:
export JAVA_HOME=/usr/local/java/jdk1.8 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib export PATH=$JAVA_HOME/bin:$PATH
- 保存文件后,执行以下命令使配置立即生效:
source /etc/profile
验证安装
java -version # 显示"java version 1.8.0_291" javac -version # 显示"javac 1.8.0_291" echo $JAVA_HOME # 输出"/usr/local/java/jdk1.8"
通过SDKMAN工具安装(适合多版本管理)
SDKMAN是Java开发工具版本管理器,可快速切换JDK版本。
安装SDKMAN
curl -s "https://get.sdkman.io" | bash source "$HOME/.sdkman/bin/sdkman-init.sh"
安装JDK1.8
sdk install java 1.8.0_292-zulu # 安装Zulu JDK(社区版,推荐) # 或安装Oracle JDK: sdk install java 8.0.292-oracle
切换JDK版本
sdk use java 1.8.0_292-zulu # 切换至JDK1.8 sdk default java 1.8.0_292-zulu # 设置默认JDK版本
常见问题处理
-
java -version
显示版本不匹配- 检查环境变量配置:
echo $JAVA_HOME
、echo $PATH
,确认路径正确。 - 若多版本JDK共存,可通过
update-alternatives
管理(Ubuntu/CentOS):sudo update-alternatives --config java # 选择默认Java版本 sudo update-alternatives --config javac # 选择默认javac版本
- 检查环境变量配置:
-
手动安装后
javac
命令不可用- 检查
CLASSPATH
是否包含$JAVA_HOME/lib/tools.jar
(编译工具依赖此路径)。 - 重新执行
source /etc/profile
并重启终端。
- 检查
相关问答FAQs
Q1:安装JDK1.8时提示“无法定位软件包 openjdk-8-jdk”,如何解决?
A:这通常是因为系统软件源未包含JDK1.8,可通过以下方式解决:
- Ubuntu:添加PPA源(如
ppa:openjdk-r/ppa
),执行sudo apt update
后再安装。 - CentOS:启用EPEL源(
sudo yum install epel-release
)或使用第三方源(如ius
)。 - 或直接选择手动安装Oracle JDK1.8。
Q2:如何彻底卸载Linux中的JDK1.8?
A:卸载方式取决于安装方式:
- 包管理器安装:
# Ubuntu/Debian sudo apt purge openjdk-8-jdk openjdk-8-jre # CentOS/RHEL sudo yum remove java-1.8.0-openjdk java-1.8.0-openjdk-devel
- 手动安装:删除安装目录并清理环境变量:
sudo rm -rf /usr/local/java/jdk1.8 # 删除安装目录 vim /etc/profile # 编辑环境变量文件,删除JAVA_HOME等配置 source /etc/profile # 重新加载配置
- SDKMAN安装:
sdk uninstall java 1.8.0_292-zulu
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/29560.html