应先确认系统架构(aarch64/x86_64)与包管理器类型(apt/yum),再根据网络条件选择在线安装openjdk 11或离线解压配置环境变量,必要时卸载冲突预装jdk,确保java与javac版本一致且含“openjdk”字样。

如果您在银河麒麟系统上运行Java程序时提示“java: command not found”,或执行java -version显示版本低于11,说明JDK 11尚未安装或未生效。系统可能预装了OpenJDK 8或11但未配置环境变量,也可能完全未安装——需先确认现状再选择对应路径。
确认系统架构与当前Java状态
这一步跳过会导致后续所有操作失败。ARM服务器上装x86 JDK会直接报错“没有那个文件或目录”,且无法通过重装修复,必须删包重来。
执行uname -m:若输出aarch64,代表ARM64架构;若输出x86_64,代表AMD64架构。【下载JDK包时必须严格匹配此结果】
执行java -version和javac -version:两者都返回“command not found”说明未安装;仅java有输出而javac无,说明只装了JRE而非JDK,不能用于开发。
执行cat /etc/os-release | grep ID:若ID含kylin-ubuntu或ubuntu,用APT;若ID为kylin且which yum有返回,则用YUM/DNF。
在线安装OpenJDK 11(推荐网络通畅时使用)
该方法由系统源自动解决依赖,安装后JAVA_HOME通常已设好,无需手动配置环境变量。
APT系系统执行:sudo apt update → sudo apt install -y openjdk-11-jdk
YUM系系统执行:sudo yum makecache → sudo yum install -y java-11-openjdk-devel
验证:java -version应输出以openjdk version "11.开头的完整信息,且javac -version返回相同版本号。
离线安装OpenJDK 11(断网/需指定小版本/多机统一部署)
方法一:解压后配置全局环境变量
将JDK 11压缩包(如OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.23_9.tar.gz)上传至/opt目录。
执行sudo tar -zxvf jdk-*.tar.gz -C /opt/,解压后目录名类似/opt/jdk-11.0.23+9。
编辑/etc/profile:sudo vim /etc/profile,在文件末尾新增三行:
export JAVA_HOME=/opt/jdk-11.0.23+9
export JRE_HOME=${JAVA_HOME}/jre
export PATH=$PATH:${JAVA_HOME}/bin:${JRE_HOME}/bin
执行source /etc/profile使配置立即生效。
Java Linux版下载入口,提供 Oracle JDK 26.0.2 官方 Linux 安装包、Java 环境配置、JDBC 数据库连接和 Java 服务端开发相关信息。
方法二:创建软链接实现版本解耦(推荐)
解压后执行:sudo ln -s /opt/jdk-11.0.23+9 /opt/jdk,之后JAVA_HOME固定写/opt/jdk,升级时只需更新软链接目标,不用改环境变量。
【注意:软链接必须用绝对路径创建,否则IDE识别失败】
验证:echo $JAVA_HOME应输出/opt/jdk(或实际路径),java -version显示11.x版本且包含“openjdk”字样。
卸载冲突的预装JDK(麒麟V10 SP3等版本常见)
部分麒麟镜像默认预装多个JDK,导致java -version输出混乱或命令不可用。
第一步:列出已安装JDK包
APT系执行:dpkg -l | grep openjdk
YUM系执行:yum list installed | grep jdk
第二步:逐个卸载(以YUM为例)
① sudo yum remove java-1.8.0-openjdk*
② sudo yum remove java-11-openjdk*
③ sudo yum remove java-17-openjdk*
第三步:清空残留
执行sudo rm -rf /usr/lib/jvm/*,避免旧路径干扰新安装。
第四步:验证卸载效果
执行java -version应提示“command not found”,ls /usr/lib/jvm应返回空或仅剩default-java软链接。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










