查看原文
其他

Spring Boot 3.0 M1 发布,正式弃用 Java 8,最低要求 Java 17。。。

沉默王二 2022-09-13

The following article is from 小姐姐味道 Author 小姐姐养的狗

一直以来,Java8 都是 Java 社区心头的痛。因为它代表着以稳定性为主的企业管理层,与拥抱变化为主的底层码农层之间的、爱的魔力拉锯战。

不升!少升!成为各大厂心照不宣的选择。

现在,这种平衡或将打破。因为 Java 届的霸主框架 SpringBoot,选择了最小支持的 Java lts 版本,就是最新的 Java17。

坚信 Java8 成为永恒的同学,该用尿滋醒一下了。

一、怎么办?

到底用不用新的版本,这其实并没有什么意义。有需求才有变化,为了追求升级而升级,那是脑残才干的事。当广大从业者,越来越了解到自己是一个工具人的时候,就会放弃这些无意义的操作。

只有两种情况,无意义才会变成有意义。

第一,是卷到极致的时候,不痛不痒的版本升级就会进入你的任务列表。

第二,是落后社区太多的时候,羞愧感加上功能的驱使会让你选择升级。不过这也并不是绝对,因为如果你是管理层,脏活自然会有人干,你也不会有这么大的动力。

二、哪些改变?

还是先回到正题,看一下 SpringBoot3 都有哪些改变吧。

首先。

再次强调一下,SpringBoot3 将强力合体 Java17,采用全新的 Spring6 版本,Maven 支持也提高到了 3.5、Gradle 提高到了 7.3。版本管理器默认也换成了 Gradle,Gradle 的下载速度,国内要肉痛一下了。

再次。

虽然我们现在使用 JavaEE 的功能越来越少,但很多巨无霸商业企业还是依然坚守着打下的江山。自从 JavaEE 改名为 Jakarta EE,Jakarta EE9 版本迎来了更大的改动,连 javax 这种包名都给改了(2019 及以后)。SpringBoot3 一琢磨,假如不追上的话,恐怕后面很快就要出 SpringBoot4 了,所以 Jakarta EE 的版本,也切成了 9。

Jakarta 是印尼首都雅加达,与斯巴达只差两字的距离。Jakarta EE 9 的版本应由 Eclipse Glassfish,Apache TomEE,Wildfly,Oracle WebLogic,JBoss 和 IBM Websphere Liberty 实施,并使用 Jakarta EE 的标志。

这通常没什么影响,因为新时代的互联网人,使用 JavaEE 的功能越来越少,就连 JavaSE 都嫌臃肿,所以这对很多人并没有什么影响。我建议你如无必要,永远不要使用它,因为里面全是坑哈哈。

其次。

移除了一些老掉牙的东西,比如 Apache ActiveMQ、Atomikos、EhCache 2、Hazelcast 3 等。Apache ActiveMQ 这种老掉牙的东西,实在是不推荐新项目使用了,高并发下它坑死了老多人;Hazelcast 也在 Redis 的进攻下节节败退,虽然用上了先进的 Raft 也颓势尽显。

这些不入流的东西们,最好的存在方式就是各种 stater,而不是放在 core 包里面。

同样被移除的还有下面这些:

  • EhCache 3
  • H2’s web console
  • Hibernate’s metrics
  • Infinispan
  • Jolokia
  • Pooled JMS
  • REST Assured

这些名词背后,充满了商业的腐朽味道,以及销售的嘴脸和被忽悠的懵逼的老板们。

三、怕不怕?

现在 SpringBoot3 还是 M1 版本,Spring Boot 团队将每两个月发布一个新的里程碑版本,所以 M2 版本预计将在 3 月 24 日发布。

其实,大家都不怕软件不更新,也不怕经过实践过的更新,最怕项目出生在这种不生不死的间隔时间。选新的吧,功能不稳定,要背锅;选旧的吧,心里不痛快,未来总有一天还得升级

所以大多数时候,时间就在这犹犹豫豫中流逝了。

保持系统的纯洁性,是一个非常好的习惯。哪怕官方为你贴心的提供了很多扩展功能,也不要随随便便去使用,否则你将尝到背叛的味道。

当然,一个普通程序员职业生涯,被定格在 35 岁的年代,在新时代农民工论调的大背景下,你并不需要为其他的阶级去着想,除非它影响到了你的面包。


没有什么使我停留——除了目的,纵然岸旁有玫瑰、有绿荫、有宁静的港湾,我是不系之舟

推荐阅读

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存