温馨提示×

centos怎么替换java版本

小樊
37
2026-09-15 10:30:07
栏目: 编程语言

在 CentOS 上“替换 Java 版本”一般有几种场景,下面按最常见、最安全的方式给你说明。


一、先查看当前 Java 版本

java -version
which java

二、使用 alternatives 管理 Java(推荐)

CentOS 自带 alternatives,适合系统级切换。

1. 安装新 Java(以 JDK 8 / 11 为例)

方式 A:yum 安装

sudo yum install java-1.8.0-openjdk-devel
sudo yum install java-11-openjdk-devel

方式 B:手动安装(Oracle / 自定义路径)

tar -zxvf jdk-17_linux-x64_bin.tar.gz -C /usr/local/

2. 注册 Java 到 alternatives

sudo alternatives --install /usr/bin/java java /usr/local/jdk-17/bin/java 300
sudo alternatives --install /usr/bin/java java /usr/lib/jvm/java-1.8.0/bin/java 200

数字越大,优先级越高


3. 切换 Java 版本

sudo alternatives --config java

会列出类似:

1 /usr/local/jdk-17/bin/java
2 /usr/lib/jvm/java-1.8.0/bin/java

输入编号即可。


4. 验证

java -version

三、同时切换 javac(如果是 JDK)

sudo alternatives --config javac

或一次性安装:

sudo alternatives --install /usr/bin/javac javac /usr/local/jdk-17/bin/javac 300

四、只对某个用户生效(不推荐系统级)

~/.bashrc~/.bash_profile 中:

export JAVA_HOME=/usr/local/jdk-17
export PATH=$JAVA_HOME/bin:$PATH

然后:

source ~/.bashrc

五、完全卸载旧 Java(可选)

rpm -qa | grep java
sudo yum remove java-1.7.0-openjdk

六、常见问题

java -version 变了但程序还用老的?

  • 检查 JAVA_HOME
  • 重启服务 / 终端

✅ Tomcat / Jenkins 不生效?

  • 改对应的 JAVA_HOME 配置

如果你告诉我:

  • CentOS 版本(6 / 7 / 8 / Stream)
  • 当前 & 目标 Java 版本
  • 是系统级还是服务级

我可以给你精确命令

0