麒麟系统java环境部署需先确认架构与现状,再依网络条件选择在线安装、离线tar包或ppa方式,最后清理冲突残留;各方式均须验证java/javac版本一致且java_home生效。

如果您在麒麟操作系统上部署Java开发环境时遇到命令不可用、版本不匹配或环境变量失效等问题,则很可能是由于JDK安装方式与系统架构或软件源策略不一致所致。以下是解决此问题的步骤:
一、确认系统架构与Java现状
准确识别硬件架构是避免“没有那个文件或目录”错误的前提,同时检查是否已预装JDK可防止版本冲突。该步骤为后续所有安装方式提供基础判断依据。
1、执行uname -m命令,若输出aarch64则为ARM64架构,若输出x86_64则为AMD64/x86架构。
2、运行java -version与javac -version,若提示“command not found”,说明未安装JDK;若返回openjdk版本但无javac,说明仅安装了JRE而非JDK。
3、执行cat /etc/os-release,查看ID字段:若含kylin-ubuntu或ubuntu,则为APT系;若ID为kylin且存在yum或dnf命令,则为YUM系。
二、使用系统包管理器在线安装OpenJDK
该方法由软件源自动处理依赖,适合网络通畅、需快速部署标准LTS版本的场景,安装后通常无需手动配置JAVA_HOME。
1、APT系系统执行:sudo apt update更新软件包索引。
2、YUM系系统执行:sudo yum makecache或sudo dnf makecache同步元数据。
3、APT系安装OpenJDK 11(推荐):sudo apt install -y openjdk-11-jdk。
4、YUM系安装OpenJDK 17:sudo yum install -y java-17-openjdk-devel或sudo dnf install -y java-17-openjdk-devel。
5、验证安装:java -version与javac -version应显示相同版本号且包含openjdk字样。
三、离线安装OpenJDK(tar.gz方式)
适用于完全断网环境、需指定精确小版本(如8u441)、或多台服务器统一部署的场景,要求手动解压并全局配置环境变量。
1、根据uname -m结果,下载对应架构的Adoptium Temurin OpenJDK tar.gz包(如OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.11_9.tar.gz)。
2、将压缩包上传至/opt/目录,执行:sudo tar -zxvf jdk-*.tar.gz -C /opt/。
3、创建版本无关软链接便于后续升级:sudo ln -s /opt/jdk-17.0.11_9 /opt/jdk。
4、编辑系统级配置:sudo vim /etc/profile,在末尾新增三行:
export JAVA_HOME=/opt/jdk
Java JDK 25 来自 OpenJDK 官方归档,版本为 JDK 25,本条下载地址已指向官方 Windows x64 zip 安装包直链,适合调试旧项目或兼容旧版 Java 运行环境。
export JRE_HOME=\${JAVA_HOME}/jre
export PATH=\${JAVA_HOME}/bin:\$PATH
5、使配置生效:source /etc/profile。
6、验证:echo $JAVA_HOME应输出/opt/jdk;java -version应显示对应版本信息。
四、PPA源安装Oracle JDK(仅APT系)
该方式适用于需特定Oracle JDK版本且接受其许可协议的用户,依赖第三方PPA仓库,安装过程会自动配置环境变量。
1、添加PPA源:sudo add-apt-repository ppa:linuxuprising/java。
2、更新软件包列表:sudo apt update。
3、安装Oracle JDK 17:sudo apt install -y oracle-java17-installer。
4、接受许可协议:安装过程中需按Tab键切换至<ok></ok>并回车确认。
5、验证:java -version应显示Oracle Corporation字样及对应版本号。
五、卸载冲突JDK包并清理残留
当系统存在多个JDK导致java -version与javac -version版本不一致,或出现no such file or directory错误时,需彻底清除旧包。
1、APT系查询已安装Java相关包:dpkg -l | grep -i jdk或dpkg -l | grep -i openjdk。
2、YUM系查询:rpm -qa | grep -i java或rpm -qa | grep -i jdk。
3、APT系卸载:sudo apt purge --auto-remove 包名(如openjdk-8-jdk)。
4、YUM系卸载:sudo rpm -e --nodeps 包名(如java-1.8.0-openjdk-devel)。
5、清理残留配置:sudo rm -rf /usr/lib/jvm/*及sudo sed -i '/JAVA_HOME/d' /etc/profile。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










