温馨提示×

Ubuntu Java版本怎么切换

小樊
45
2026-07-27 06:18:51
栏目: 编程语言

在 Ubuntu 上切换 Java 版本,常用且推荐的方法是使用 update-alternatives。下面按常见场景一步步说明。


一、先查看已安装的 Java 版本

update-alternatives --list java

如果还没安装 Java,可以先安装:

sudo apt update
sudo apt install openjdk-8-jdk openjdk-11-jdk openjdk-17-jdk

二、切换 Java 版本

1️⃣ 切换 java 命令

sudo update-alternatives --config java

输出示例:

There are 3 choices for the alternative java (providing /usr/bin/java):

  Selection    Path                                         Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      auto mode
  1            /usr/lib/jvm/java-8-openjdk-amd64/bin/java    1081      manual mode
  2            /usr/lib/jvm/java-11-openjdk-amd64/bin/java   1111      manual mode
  3            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      manual mode

Press <enter> to keep the current choice[*], or type selection number:

输入对应数字即可。


2️⃣ 切换 javac(编译器)

sudo update-alternatives --config javac

⚠️ 建议 java 和 javac 版本保持一致,否则容易出问题。


三、验证当前 Java 版本

java -version
javac -version

四、通过 JAVA_HOME 切换(推荐用于开发)

查看 Java 安装路径

update-alternatives --list java

例如:

/usr/lib/jvm/java-11-openjdk-amd64/bin/java

JAVA_HOME 为:

/usr/lib/jvm/java-11-openjdk-amd64

设置 JAVA_HOME

编辑环境变量文件(选一个):

nano ~/.bashrc

添加:

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

生效:

source ~/.bashrc

验证:

echo $JAVA_HOME

五、临时切换(仅当前终端)

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

关闭终端后失效。


六、常见问题

❓ 切换后版本没变?

  • 检查是否同时切换了 javajavac
  • 检查 PATH 是否包含其他 Java(如手动安装的 Oracle JDK)
  • 执行:
which java

七、总结(最常用)

sudo update-alternatives --config java
sudo update-alternatives --config javac

如果你用的是 Ubuntu 版本 + 具体 Java 版本(比如 20.04 / 22.04 / 24.04),可以告诉我,我可以给你更精确的命令。

0