Spring Boot官宣:正式弃用 Java 8,最低要 Java 17!
大家好,我是D哥
点击关注下方公众号,Java面试资料 都在这里
来源:码猿技术专栏
技术不断更新,这不springboot又开始了新的发布!
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 3、Infinispan、Jolokia、Pooled JMS等)。
所以,目前的M1版本相较2.x版本来说,会有一些特性的缺失。当然大多数应该还只是暂时的,Spring Boot官方会等这些第三方库发布Jakarta兼容库之后再重新引入。
# 这个支持被移除
下面这些功能的支持被移除了,相较上一个SNAPSHOT版本增加了Hazelcast 3
Apache ActiveMQ
Atomikos
EhCache 2
Hazelcast 3
# 依赖升级
相关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
D哥也了一个技术群,主要针对一些新的技术和开源项目值不值得去研究和IDEA使用的“骚操作”,有兴趣入群的同学,可以长扫描区域二维码,一定要注意事项:城市+昵称+技术方向,根据格式备注,可快速通过。
▲长按扫描