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

一、VIP会员介绍:
1.体验VIP会员,有效期30天,(会员/免费/专区)源码,每天可下载两个!
2.终身VIP会员,有效期9999天,(会员/免费/专区)源码,每天可下载五十个!
3.体验至尊VIP会员,有效期1天,(代售/精品/专区)源码,当天可下载三个!
4.终身至尊VIP会员,有效期9999天,(代售/精品/专区)源码,当天可下载十个!
5.本站不提供任何技术支持!
6.不接受砍价等等...觉得不划算可以不购买/单买!
7.(代售/精品/专区)均为测试过绝对值!
二、购买须知:
1. 因源代码属于知识性付费产品且具复制性,买家付款后将不支持以其他任何理由要求退款。
2.由于特殊原因本站不提供任何技术,咨询问题等等...(可以理解为所有源码只是框架,部分源码有搭建教程,没有搭建教程需自行研究)
3.vip免费下载的源码均为未测试源码,本站只收集搬运资源、我们不验证资源是否完整与可用,需要会员自行研究搭建测试
4. 该程序源码应在符合法律法规的条件下仅用于相关正规场景的测试、娱乐以及学习交流,不得用于商业活动及非法途径,如若违反国内外现行法律法规及其所产生的一切不良后果与本店无关(一切责任由买家/会员承担),且本店有权单方暂停或终止服务,并享有持续追究其法律责任的权利;
三、免责声明:
1.本文部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责。
2.若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
3.如果本站有侵犯、不妥之处的资源,请在网站右边客服联系我们。将会第一时间解决!
4.本站所有内容均由互联网收集整理、网友上传,仅供大家参考、学习,不存在任何商业目的与商业用途。
5.本站提供的所有资源仅供参考学习使用,版权归原著所有,禁止下载本站资源参与商业和非法行为,请在24小时之内自行删除!
6.不保证任何源码框架的完整性。
7.侵权联系邮箱:aliyun6168@gail.com / aliyun666888@gail.com
8.若您最终确认购买,则视为您100%认同并接受以上所述全部内容。

#### 一、前言

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)等发行版。

相关文章