温馨提示×

ubuntu更新后java失效咋弄

小樊
38
2026-09-07 06:00:26
栏目: 编程语言

Ubuntu 更新后 Java 失效,通常是系统更新改变了默认 JDK、环境变量被重置,或 Java 被卸载/替换导致的。可以按下面步骤排查和修复:


一、先确认问题现象

执行:

java -version

常见报错:

  • Command 'java' not found
  • 版本变成 OpenJDK 而非你原来的 Oracle JDK
  • 提示 No such file or directory

二、查看系统中是否还有 Java

ls /usr/lib/jvm/

或:

update-alternatives --list java

如果列表为空 → Java 被卸载或环境变量失效。


三、重新安装或切换 Java(最常见解决方式)

方案 1:安装 OpenJDK(推荐,稳定)

sudo apt update
sudo apt install default-jdk

或指定版本:

sudo apt install openjdk-17-jdk

方案 2:使用系统自带的多版本切换

sudo update-alternatives --config java

选择你需要的 JDK 编号。

同样设置 javac

sudo update-alternatives --config javac

四、修复环境变量(很关键)

编辑:

nano ~/.bashrc

或(系统级):

sudo nano /etc/environment

添加或修正:

export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH

保存后:

source ~/.bashrc

五、如果你用的是 Oracle JDK

更新后可能被清掉:

  1. 重新下载 .deb 或解压版
  2. 放到 /usr/lib/jvm/
  3. 注册:
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk-xx/bin/java 1

六、特殊场景

  • Docker / Jenkins / IDE 失效:检查它们是否写死了绝对 JAVA_HOME
  • Snap 应用:可能需要重启或重装
  • 内核大版本升级:建议重启一次

如果你愿意,可以告诉我:

  • Ubuntu 版本
  • java -version 的具体报错
  • 用的是 OpenJDK 还是 Oracle JDK

我可以给你精确命令

0