You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu系统无法识别已安装JDK,执行java -version无对应版本显示

问题原因及解决方法

这是因为你手动解压的JDK还没被系统识别——系统的环境变量PATH里没有包含这个JDK的bin目录,所以当你输入java命令时,系统只会去默认的系统路径里查找,找不到就会提示你安装包管理工具里的JDK/JRE版本。

下面是具体的解决步骤:

临时生效(仅当前终端会话)

如果只是想临时测试这个JDK,直接在终端执行以下命令:

export PATH=/opt/java/jdk-10.0.1/bin:$PATH

之后再运行java -version,就能看到JDK 10.0.1的版本信息了。

永久生效(所有终端会话及开机自动加载)

要让配置永久生效,需要修改环境变量配置文件,有两种方式可选:

方式1:用户级配置(仅当前用户生效)

  1. 打开用户主目录下的.bashrc文件:
nano ~/.bashrc
  1. 在文件末尾添加以下内容:
export JAVA_HOME=/opt/java/jdk-10.0.1
export PATH=$JAVA_HOME/bin:$PATH
  1. 保存并退出(nano编辑器中按Ctrl+O确认保存,再按Ctrl+X退出)。
  2. 让配置立即生效:
source ~/.bashrc

方式2:系统级配置(所有用户生效)

如果要让所有用户都能使用这个JDK,可修改系统全局配置文件:

  1. 打开/etc/profile文件(需要管理员权限):
sudo nano /etc/profile
  1. 在文件末尾添加同样的环境变量内容:
export JAVA_HOME=/opt/java/jdk-10.0.1
export PATH=$JAVA_HOME/bin:$PATH
  1. 保存退出后,执行以下命令让配置生效:
source /etc/profile

可选:用update-alternatives管理多JDK版本

如果你的系统里有多个JDK版本,推荐用update-alternatives工具统一管理:

  1. 先注册JDK的java命令:
sudo update-alternatives --install /usr/bin/java java /opt/java/jdk-10.0.1/bin/java 100

这里的100是优先级,数字越大优先级越高。
2. 同理注册javac命令(需要编译Java代码时用):

sudo update-alternatives --install /usr/bin/javac javac /opt/java/jdk-10.0.1/bin/javac 100
  1. 切换默认JDK版本:
sudo update-alternatives --config java

按照终端提示输入对应编号,就能切换到目标版本。

完成以上操作后,再运行java -version,就能正常显示你安装的JDK 10.0.1版本了。

内容的提问来源于stack exchange,提问作者kartikeykant18

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 07:27:50