CentOS 系统下如何将 Java 8 升级到 Java 11

#### 一、前言

Java 8 曾经是长期支持版本(LTS),被广泛用于企业级应用开发。但随着时间推移,Java 11 成为了新的 LTS 版本,提供了更好的性能、安全更新和新特性。本文将指导你在 CentOS 系统中将 Java 8 升级到 Java 11。

#### 二、查看当前 Java 版本

在升级之前,首先确认当前系统中安装的 Java 版本:

“`bash
java -version
“`

如果输出如下内容,说明当前使用的是 Java 8:

“`bash
openjdk version “1.8.0_292”
OpenJDK Runtime Environment (build 1.8.0_292-b10)
OpenJDK 64-Bit Server VM (build 25.292-b10, mixed mode)
“`

#### 三、安装 Java 11(OpenJDK 11)

CentOS 的默认仓库中通常包含 OpenJDK 11,可以使用 `yum` 包管理器安装:

“`bash
sudo yum install -y java-11-openjdk java-11-openjdk-devel
“`

– `java-11-openjdk`:运行 Java 应用程序所需的运行时环境。
– `java-11-openjdk-devel`:开发工具包(包括编译器、调试器等)。

#### 四、设置默认 Java 版本

如果系统中同时安装了多个 Java 版本,需要使用 `alternatives` 命令来切换默认版本:

“`bash
sudo alternatives –config java
“`

系统会列出所有已安装的 Java 版本,输入对应 Java 11 的编号即可。

例如:

“`bash
There are 2 programs which provide ‘java’.

Selection Command
———————————————–
*+ 1 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64/jre/bin/java
2 /usr/lib/jvm/java-11-openjdk-11.0.11.0.9-2.el7_9.x86_64/bin/java

Enter to keep the current selection[+], or type selection number: 2
“`

同样地,也可以设置 `javac` 编译器的默认版本:

“`bash
sudo alternatives –config javac
“`

#### 五、验证 Java 版本

完成切换后,再次检查 Java 和 Java 编译器版本:

“`bash
java -version
javac -version
“`

预期输出应为:

“`bash
openjdk version “11.0.11” 2021-08-17 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.11+9-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.11+9-LTS, mixed mode, sharing)
“`

“`bash
javac 11.0.11
“`

#### 六、可选:卸载 Java 8(旧版本)

如果你不再需要 Java 8,可以选择卸载它以节省空间:

“`bash
sudo yum remove -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
“`

#### 七、配置环境变量(可选)

虽然使用 `alternatives` 设置后系统已经可以正常运行 Java 11,但在某些开发环境中(如 Tomcat、Maven、IDE 等),可能仍需要手动配置 `JAVA_HOME` 环境变量。

编辑环境变量配置文件:

“`bash
sudo vi /etc/profile.d/java.sh
“`

添加以下内容:

“`bash
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
export PATH=$JAVA_HOME/bin:$PATH
“`

保存后应用更改:

“`bash
source /etc/profile.d/java.sh
“`

验证 `JAVA_HOME` 是否设置成功:

“`bash
echo $JAVA_HOME
“`

#### 八、总结

通过以上步骤,你已经成功将 CentOS 系统中的 Java 从 8 升级到了 11。Java 11 带来了性能优化、新 API 支持和更长的支持周期,适合用于现代 Java 应用程序的开发与部署。

#### 九、常见问题

**Q1:如何查看系统中已安装的所有 Java 版本?**

“`bash
ls /usr/lib/jvm/
“`

**Q2:升级后某些程序无法运行怎么办?**

可能是程序依赖 Java 8 的特性,建议先测试程序兼容性,或使用 `jenv` 工具进行多版本管理。

**Q3:是否必须使用 OpenJDK?**

OpenJDK 是开源免费的,适合大多数应用场景。如需商业支持,可选择 Oracle JDK 或 Adoptium(原 AdoptOpenJDK)等发行版。

免责声明:
1.本站所有源码支持免费互换,所有资源来源于网络,分享目的仅供大家学习和交流!不得使用于非法商业用途,不得违反国家法律。否则后果自负!(下载即表示同意遵守此条例!) 所有资源,不能保证完全去除后门和源码的完整性!(建议先用D盾 等查杀软件先扫描一遍!)且都不包含技术服务请大家谅解!
2.根据二○○二年一月一日《计算机软件保护条例》规定:为了学习和研究软件内含的设计思想和原理, 通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可, 不向其支付报酬!鉴于此,也希望大家按此说明研究!
3.本站所有源码均收集来源于网络,若此源码资源等文章侵犯您的合法权益,请私信联系站长,并于24小时内删除下架。
4.本站所有源码仅限学习,交流使用,请勿上线或非法使用,一切法律责任均于此站无关。
5.侵权联系邮箱:188773464@qq.com
6.若您最终确认购买,则视为您100%认同并接受以上所述全部内容。

源码下载网 技术社区 CentOS 系统下如何将 Java 8 升级到 Java 11 https://svipm.com.cn/19732.html

相关文章

猜你喜欢