Java8升级的一点思考

Published on 2025-08-10 13:12 in 分类: 随笔 with 狂盗一枝梅
分类: 随笔

Oracle 对 Java 8 的公开免费更新已于2019年终止,但是直到现在2025年,Java8还是非常流行,但是随着SpringBoot、SpringFramework等框架逐渐不再支持Java8环境下运行,升级Java8到新版本已经势在必行。

一、新版SpringBoot的要求

最近翻了翻SpringBoot的官方文档,突然发现SpringBoot已经发展到3.5.4了,而我还在用2.3.12,真的落后了好大一截。

https://spring.io/projects/spring-boot#learn

image-20250807153836530

点开3.5.4文档:https://docs.spring.io/spring-boot/system-requirements.html

image-20250807154107218

从官方文档可以看到,SpringBoot3.5.4需要Java17到最新版本的Java24之间的版本,不管是Java8还是Java11都已经不在支持的范围内。

二、新版SpringFramework的要求

新版SpringFramework已经到6.2.9版本,而我还在用5.2.15,同样落后了一个大版本号:https://spring.io/projects/spring-framework#learn

image-20250807154934664

打开6.2.9版本的文档,可以看到该版本对Java版本的要求:https://docs.spring.io/spring-framework/reference/overview.html

image-20250807155049633

同样的,新版本SpringFramework要求Java也至少得是Java17版本。

三、Java版本的选择

从SpringBoot以及SpringFramework的最新版本的要求来看,他们的运行环境至少得是Java17,那么我们应该升级到Java17吗?

打开Java官网看看:https://www.oracle.com/java/technologies/

image-20250807155426370

可以看到,Java11、Java17、Java21是LTS(Long Term Support)版本,即长期支持版。Java11比较特殊,它虽然是LTS,但是一直被人诟病,最后成了一个Java8升级的“过渡版本”,而且SpringBoot以及SpringFramework都从Java17开始支持,所以Java11不做考虑了。考虑到Java17之上还有Java21也是LTS版本,那么毫无疑问,直接升级到Java21会是更好的选择。

Oracle JDK下载地址:https://www.oracle.com/java/technologies/downloads/#jdk21-windows

Open JDK下载地址: https://jdk.java.net/archive/

四、Java21新特性

写到这里我有些无语,因为Java21我也没用它开发过项目,我不知道它有啥新特性。。。。等抽空再整理整理吧。



END.


#java #spring #springboot
复制 复制成功