​Spring Boot 2.0 同步至 Maven 仓库出错,已撤回…… - 开源中国社区
​Spring Boot 2.0 同步至 Maven 仓库出错,已撤回……
凝小紫 2018年03月01日

​Spring Boot 2.0 同步至 Maven 仓库出错,已撤回……

凝小紫 凝小紫 发布于2018年03月01日 收藏 15

【腾讯云】如何快速搭建微信小程序?>>>  

Spring Boot 2.0 目前已在 GitHub 上发布了 v2.0.0.RELEASE 版本(https://github.com/spring-projects/spring-boot/releases/tag/v2.0.0.RELEASE)。

不过还没同步至 Maven 中央仓库,请保持关注 https://projects.spring.io/spring-boot/ 。

最新消息,由于同步至 Maven 仓库出错(查看 https://github.com/spring-projects/spring-boot/issues/12290 ),官方在 GitHub 上发布的 v2.0.0.RELEASE 已撤回……

GitHub 上已经没有 2.0 的 release,看来要等 Spring Boot 2.0.1 了……

Spring Boot 2 新特性概览:正式支持 Java 9

根据我们此前的报道,Spring Boot 2 最大的变化主要集中在以下几方面:

  • Spring Boot 2 基于 Spring Framework 5,而整个 Spring Framework 5.0 代码库运行于 Java 8 之上。所以,Spring Boot 2 要求的 JDK 版本最低也是 Java 8,同时也已正式支持 Java 9(这里有一份使用 Java 9 运行 Spring Boot 的文档 https://www.oschina.net/translate/spring-boot-with-java9

  • 与 Spring Boot 1 的差别在于,许多配置属性已被重命名或被删除,因此由 Spring Boot 1 迁移至 Spring Boot 2 需要注意一些配置属性

  • Spring Boot 为 Java 应用程序引入的关键创新是将 Servlet 容器嵌入到一个可执行的 jar 包中,这个 jar 包会打包整个应用。Spring Boot 还提供了 Tomcat、Undertow 和 Jetty 作为可选的方案

在此前发布的 RC 版本中,Tomcat、Undertow 和 Jetty 均已支持 HTTP/2,并通过 Conscrypt 库提供对原生 TLS 的支持。这对 Spring Boot 的默认服务器 Tomcat 8.5.x 来说意义重大,如果 libtcnative 库及其依赖项安装在主机操作系统上,则只支持 HTTP/2。

监控方面,Spring Boot 2 增强了对 Micrometer 的集成。RabbitMQ、JVM 线程和垃圾收集指标会自动进行 instrument 监控,异步控制器(controller)也会自动添加到监控里。通过集成,还可以对 InfluxDB 服务器进行监控。

数据方面,Spring Boot 2 让你能够以更加细粒度的方式自定义 Hibernate 属性。另外,还可以暴露 RedisCacheConfiguration,从而控制 RedisCacheManager。Flyway 和 Liquibase 配置也更灵活。

此外,Spring Boot 2 也大大增强了对 GSON 的支持,还包含了改进的 actuator JSON 架构。

还有一个值得关注的变更就是 Spring Boot banner —— 即启动时的 ASCII 图像,它被开发团队广泛应用于展示自己的应用品牌信息。在 Spring Boot 2 中,现已支持动画 GIF。

值得注意的是,在 Spring Boot 2.0 中,许多配置属性已被重命名或被删除,为了方便升级,Spring Boot 发布了一个新的 spring-boot-properties-migrator 模块。只要将其作为依赖添加到项目中,它不仅会分析应用程序的环境并在启动时打印诊断信息,而且还会在运行时阶段为项目临时将属性迁移至新的配置方式。

有关 Spring Boot 2.0 更详细的迁移指南,可以保持关注我们正在翻译的官方文档。(https://www.oschina.net/translate/spring-boot-2-0-migration-guide)
欢迎有兴趣的开发者一起参与翻译~!

下面我们来看看 Spring Boot 2 值得关注的新特性。

支持 Java 9

Spring Boot 2 最值得期待的新功能莫过于对 Java 9 的正式支持,现在要求最低的 JDK 版本是 Java 8,这意味着不可以使用 JDK 7 或更旧的版本运行 Spring Boot 2。

Spring Framework

Spring Framework 5.0 现已与 Spring Boot 集成。Spring Framework 5.0 一些有趣的功能:

  • 支持 JDK 9 和 Java EE 8 级别的 API(如 Servlet 4.0)

  • 与 Reactor 3.1, JUnit 5, 和 Kotlin 语言的全面集成

  • 带来了许多函数式 API 变体 (functional API variants)

  • 响应式堆栈 Web 框架 —— Spring WebFlux

  • 完全支持 JUnit 5 Jupiter,因此可以在 JUnit 5 中编写测试

  • 添加对 @Nullable 和 @NotNull 注解的支持,以在编译时而不是运行时处理空指针异常

Spring Security

虽然 Spring Security 并非是 Spring Boot 的正式组成部分,但这里仍值得一提,因为它能与 Spring Framework 5.0 很好地搭配使用。最新的 Spring Security 5 提供了超过 400 多项的功能增强和错误修复。有以下值得关注的新功能:

  • 用户可通过 OAuth 2.0 provider 使用现有帐户进行身份验证

  • 与 Spring Framework 5 一样,Spring Security 5 也添加了对响应式编程的支持

  • 以更现代的方式完成对密码的编码

@ConditionalOnBean

从 Spring Boot 1.x 迁移到 2.x 时需要考虑的重要一点是,当确定条件是否满足时,@ConditionalOnBean 注解现在使用逻辑 AND 而不是逻辑 OR 来表示。

对 WebFlux 和 WebFlux.fn 的支持

Spring Boot 2.0 为响应式的 Spring Web 框架提供了一个新的启动器 — spring-boot-starter-webflux,spring-boot-starter-webflux 本身包含 WebFlux,再加上 Reactor Netty 作为默认的 Web 引擎(spring-boot-starter-reactor-netty)。

可以使用 @WebFluxTest 来测试响应式的控制器,它为 Spring MVC 提供了类似于 @WebMvcTest 的支持,而且 WebTestClient 是自动配置的。

依赖组件的更新

  • Jetty 9.4

  • Tomcat 8.5

  • Hibernate 5.2

  • Gradle 3.4

Thymeleaf

Spring Boot 2 另一个值得关注的新特性是现已正式支持 Thymeleaf 3,包含了对 Thymeleaf 和 Spring Security Thymeleaf 依赖关系的更新。Thymeleaf 3 中值得关注的变化:

  • 由于使用了新的解析系统,Thymeleaf 不再基于 XML

  • 引入新的文本模板模式,它给 Thymeleaf 提供了输出 CSS,Javascript 和纯文本的功能

  • 重写了引擎,性能显著提升

最后的话

Spring Boot 2 是一个重大版本,以下新增的特性或许是你选择升级的理由:

  • 支持 Java 9

  • 对响应式应用更好的支持

  • 支持 Thymeleaf 3

如果你能从这些变化中受益,不妨考虑选择升级。另外,Spring Boot 2 还包含许多错误修复和性能改进,这些都是升级的重要原因。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:​Spring Boot 2.0 同步至 Maven 仓库出错,已撤回……
分享
评论(54)
精彩评论
4

引用来自“阿信sxq”的评论

官方新闻都还没有放,你们就放了,万一有问题撤回去了就不好了

引用来自“局长”的评论

一开始我是拒绝发布的

引用来自“阿信sxq”的评论

说出你的故事
请开始你的表演
4
真的撤回去了
3
哈哈哈,撤回了
3
maven仓库赶紧放吧
2
已升级,Java9 + SpringBoot2 + Gradle 4.6 简直完美
最新评论
0
看这些大佬都会出错我也就安心了
1
spring-boot 2.0.0.M7就开始使用了,就为了平滑升级到spring-boot 2
2
已升级,Java9 + SpringBoot2 + Gradle 4.6 简直完美
0

引用来自“猫咪喵喵”的评论

最新消息,他们又发布出来了😂
https://www.oschina.net/news/93781/spring-boot-2-0-goes-ga 发新闻了
0
最新消息,他们又发布出来了😂
0
2.0.0发布了
0
https://github.com/spring-projects/spring-boot/releases 又回来了
0
2.0.1马上就发
0
又有了@凝小紫
0
下个版本要解决同步失败了 https://github.com/spring-projects/spring-boot/issues/12292 :grin:
0

引用来自“阿信sxq”的评论

官方新闻都还没有放,你们就放了,万一有问题撤回去了就不好了

引用来自“局长”的评论

一开始我是拒绝发布的

引用来自“阿信sxq”的评论

说出你的故事

引用来自“忘掉地平线”的评论

请开始你的表演
请停止你拙劣的表演
0
可怕
0
这坑爹的玩意儿,正准备升级呢。。。。
0

引用来自“光头程序员”的评论

呵呵 , 2.0 release 果真下线了 (2018-03-01 11:07)

引用来自“局长”的评论

果然是如 @阿信sxq 所说,尴了个大尬 :sob::sob:
就叫你不要太激进了吧
0
终于发布了,真是千呼万唤
1

引用来自“-TNT-”的评论

貌似发中央仓库出问题了 https://github.com/spring-projects/spring-boot/issues/12290

引用来自“undefine”的评论

美帝时间晚上9点半,看来他们也加班发版本啊

引用来自“-TNT-”的评论

然后神志不清,然后引用了某个snapshot的东西,然后明天就2.0.1了 :smiling_imp:

引用来自“MrXionGe”的评论

老哥,看来你是有故事的人

引用来自“-TNT-”的评论

去年spring-data出过一次这种事故,没过多久spring-boot也来了一次
根据https://github.com/spring-projects/spring-boot/issues/12290,应该是pom里面缺少开发人员信息
1
不上这个当,等出了2.1再用
0

引用来自“-TNT-”的评论

貌似发中央仓库出问题了 https://github.com/spring-projects/spring-boot/issues/12290

引用来自“undefine”的评论

美帝时间晚上9点半,看来他们也加班发版本啊

引用来自“-TNT-”的评论

然后神志不清,然后引用了某个snapshot的东西,然后明天就2.0.1了 :smiling_imp:

引用来自“MrXionGe”的评论

老哥,看来你是有故事的人
去年spring-data出过一次这种事故,没过多久spring-boot也来了一次
0

引用来自“哈哈爱兮爱兮乎乎”的评论

https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0-Release-Notes

这才是发布说明页。
我知道
0
https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0-Release-Notes

这才是发布说明页。
顶部