点击关注下方公众号,架构师全套资料 都在这里Spring Boot官宣:正式弃用 Java 8,最低要求 Java 17!怎么办?-编程之家

0、2T架构师学习资料干货分享

整理: 码猿技术专栏

上一篇:“有没有考虑过手下人的死活?”:微信新员工怒怼高管,痛斥加班文化愤而离职

2022年1月20日,Spring官方发布了Spring Boot 3.0.0的第一个里程碑版本M1。

下面一起来来看看Spring Boot 3.0.0 M1版本都有哪些重大变化:

Java基线从 Java 8 提升到了 Java 17

这个在最早的Spring Boot 3相关预告中就已经知道了,Java 17将成为未来的主流版本。那么问题来了,大家都把Java 17的升级提上日程了吗?

从Java EE APIs 到 Jakarta EE

Spring Boot 3开始,所有的Java EE Api都需要迁移到Jakarta EE上来。

大部分用户需要修改import相关API的时候,要用jakarta替换javax。比如:原来引入javax.servlet.Filter的地方,需要替换为jakarta.servlet.Filter

但还有一些依赖Java EE API的第三方库,目前还没有得到很好的支持,所以在Spring Boot 3中暂时会先移除这类组件的支持(比如:EhCache 3InfinispanJolokiaPooled JMS等)。

所以,目前的M1版本相较2.x版本来说,会有一些特性的缺失。当然大多数应该还只是暂时的,Spring Boot官方会等这些第三方库发布Jakarta兼容库之后再重新引入。

这个支持被移除

下面这些功能的支持被移除了,相较上一个SNAPSHOT版本增加了Hazelcast 3

  • Apache ActiveMQ

  • Atomikos

  • EhCache 2

  • Hazelcast 3

对了,如果您正在学习Spring Boot,顺手推荐一个免费教程:关注互联网架构师,在后台回复:2T,获取,非常齐全。赶紧加入收藏夹吃灰吧!

依赖升级

相关Spring项目的依赖版本:

  • Micrometer 2.0.0-M1

  • Spring AMQP 3.0.0-M1

  • Spring Batch 5.0.0-M1

  • Spring Data 2022.0.0-M1

  • Spring Framework 6.0.0-M2

  • Spring Integration 6.0.0-M1

  • Spring HATEOAS 2.0.0-M1

  • Spring Kafka 3.0.0-M1

  • Spring LDAP 3.0.0-M1

  • Spring REST Docs 3.0.0-M1

  • Spring Security 6.0.0-M1

  • Spring Session 2022.0.0-M1

  • Spring Web Services 4.0.0-M1

第三方库的依赖版本:

  • Artemis 2.20.0

  • Hazelcast 5.0

  • Hibernate Validator 7.0

  • Jakarta Activation 2.0

  • Jakarta Annotation 2.0

  • Jakarta JMS 3.0

  • Jakarta JSON 2.0

  • Jakarta JSON Bind 3.0

  • Jakarta Mail 2.0

  • Jakarta Persistence 3.0

  • Jakarta Servlet 5.0

  • Jakarta Servlet JSP JSTL 2.0

  • Jakarta Transaction 2.0

  • Jakarta Validation 3.0

  • Jakarta WebSocket 2.0

  • Jakarta WS RS 3.0

  • Jakarta XML Bind 3.0

  • Jakarta XML Soap 2.0

  • Jetty 11

  • jOOQ 3.16

  • Tomcat 10

未来计划

后续Spring Boot团队将每两个月发布一个新的里程碑版本,所以M2版本预计将在3月24日发布,而GA版本将在11月下旬与大家见面。

参考资料

https://spring.io/blog/2022/01/20/spring-boot-3-0-0-m1-is-now-available