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

2023-08-03 1403阅读

温馨提示:这篇文章已超过599天没有更新,请注意相关的内容是否还可用!

很多人也在这个帖子上质疑: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中央仓库中提交。

本地仓库如何配置_gradle配置本地仓库_配置本地yum仓库

作者 | 堆栈管理器

来源 | Java技术栈

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

本地仓库如何配置_配置本地yum仓库_gradle配置本地仓库

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

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

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

堆栈长度简单总结一下。

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

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

配置本地yum仓库_gradle配置本地仓库_本地仓库如何配置

为什么要迁移?

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

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

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

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

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

gradle配置本地仓库_本地仓库如何配置_配置本地yum仓库

移民有什么好处?

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

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

如下截图所示:

本地仓库如何配置_gradle配置本地仓库_配置本地yum仓库

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

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

配置本地yum仓库_gradle配置本地仓库_本地仓库如何配置

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

gradle配置本地仓库_本地仓库如何配置_配置本地yum仓库

gradle配置本地仓库_配置本地yum仓库_本地仓库如何配置

会有什么影响?

有朋友可能会疑问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 依赖为例进行演示的。

学习永远不会停止。

gradle配置本地仓库_本地仓库如何配置_配置本地yum仓库

配置本地yum仓库_本地仓库如何配置_gradle配置本地仓库

VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]