Spring Boot 杀死了 Maven,正式拥抱 Gradle

08-03 1322阅读
很多人也在这个帖子上质疑:Maven用得好好的,为什么要迁移到Gradle呢?虽然帖子只说Gradle很棒,但没有说迁移到Gradle的影响和价值。在Spring Boot 2.3.0.M1中,将首次使用Gradle代替Maven来构建Spring Boot项目。Spring Boot团队给出的主要原因是迁移到Gradle可以减少构建项目所需的时间。Spring Boot 官方还给出了数据,一个完整的 Maven 项目构建一般需要一个小时甚至更长时间,但在过去 4 周内,使用 Gradle 构建的平均时间仅为 9 分 22 秒!有朋友可能会疑问Spring Boot迁移到Gradle是否会影响公司现有的Maven项目或者后续的版本升级?如果只是使用Spring Boot框架来构建系统,仍然可以使用Maven来管理依赖,并且Spring Boot会继续在Maven中央仓库中提交。

Spring Boot 杀死了 Maven,正式拥抱 Gradle

作者 | 堆栈管理器

来源 | Java技术栈

国外社交网站上有一篇关于Spring Boot从Maven迁移到Gradle的帖子:

Spring Boot 杀死了 Maven,正式拥抱 Gradle

很多人也在这个帖子上质疑:Maven用得好好的,为什么要迁移到Gradle呢?

虽然帖子只说Gradle很棒,但没有说迁移到Gradle的影响和价值。

因此Spring Boot官方发博文对此进行了解释:

堆栈长度简单总结一下。

没错,Spring Boot 做了一个重大调整:

在Spring Boot 2.3.0.M1中,将首次使用Gradle代替Maven来构建Spring Boot项目。

Spring Boot 杀死了 Maven,正式拥抱 Gradle

为什么要迁移?

Spring Boot团队给出的主要原因是迁移到Gradle可以减少构建项目所需的时间。

Spring Boot 杀死了 Maven,正式拥抱 Gradle

由于使用Maven构建,回归测试花费的时间太长,等待项目构建大大增加了修复错误和实现新功能的时间。

Gradle的目的是减少构建工作量,它可以根据需要构建任何变更或并行构建。

当然,Spring Boot团队也花了很多时间尝试使用Maven进行并行构建,但最终因为构建Spring Boot项目的复杂性而失败。

另外,Spring Boot团队也看到了在其他Spring项目中使用Gradle和并行构建所带来的提升,并且在一些第三方项目上也可以使用Gradle的构建缓存。 这些优点促使 Gradle 构建 Spring Boot 项目。 来。

Spring Boot 杀死了 Maven,正式拥抱 Gradle

移民有什么好处?

栈长使用Maven,哪怕只改一处代码,整个就构建完成了,构建项目确实要花很多时间。

Spring Boot 官方还给出了数据,一个完整的 Maven 项目构建一般需要一个小时甚至更长时间,但在过去 4 周内,使用 Gradle 构建的平均时间仅为 9 分 22 秒! ! !

如下截图所示:

Spring Boot 杀死了 Maven,正式拥抱 Gradle

单从施工时间来看,效率真是成倍增加。

我专门看了一下,Spring Boot 2.2.8中使用的是Maven:

Spring Boot 杀死了 Maven,正式拥抱 Gradle

Spring Boot 杀死了 Maven,正式拥抱 Gradle

最新版本的 Spring Boot 2.3.1 已经切换到 Gradle:

Spring Boot 杀死了 Maven,正式拥抱 Gradle

Spring Boot 杀死了 Maven,正式拥抱 Gradle

会有什么影响?

有朋友可能会疑问Spring Boot迁移到Gradle是否会影响公司现有的Maven项目或者后续的版本升级?

如果只是使用Spring Boot框架来构建系统,仍然可以使用Maven来管理依赖,并且Spring Boot会继续在Maven中央仓库中提交。

如下所示:

 org.springframework.boot spring-boot 2.3.1.RELEASE

因为版本确定后,本次Maven构建只是一次性的,不会影响Spring Boot团队日常的迭代效率。

但是,如果我们需要在本地构建 Spring Boot 源代码,或者您正在学习最新的 Spring Boot 源代码,则需要掌握 Gradle 构建。

顺便说一句,Gradle 绝对是未来的趋势,但你不一定要迁移到 Gradle。 只有适合自己的才是最好的。 毕竟现在 Maven 和 Gradle 都是主流,但 Maven 占据市场更多,很多主流开源项目都是以 Maven 依赖为例进行演示的。

学习永远不会停止。

Spring Boot 杀死了 Maven,正式拥抱 Gradle

Spring Boot 杀死了 Maven,正式拥抱 Gradle


免责声明
1、本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明。
2、本网站转载文章仅为传播更多信息之目的,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所
提供信息的准确性及可靠性,但不保证信息的正确性和完整性,且不对因信息的不正确或遗漏导致的任何
损失或损害承担责任。
3、任何透过本网站网页而链接及得到的资讯、产品及服务,本网站概不负责,亦不负任何法律责任。
4、本网站所刊发、转载的文章,其版权均归原作者所有,如其他媒体、网站或个人从本网下载使用,请在
转载有关文章时务必尊重该文章的著作权,保留本网注明的“稿件来源”,并白负版权等法律责任。

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]

取消
微信二维码
微信二维码
支付宝二维码