首页 > 解决方案 > 共享 gradle 依赖:版本目录 vs 插件

问题描述

Gradle 正在开发用于在项目之间共享依赖版本的新功能,这些功能将为声明公共依赖提供中心位置 ( settings.gradle, )。libs.versions.toml

通过插件共享块已经成为可能(并且很容易)dependencies,那么与新版本目录和依赖包相比,插件共享依赖项的方法的缺点是什么?这些新功能改进了什么?

标签: gradlegradle-dependencies

解决方案


这不是一个彻底的答案。但是,让我分享一下我认为有影响的东西。我们需要记住,Gradle 是围绕开发人员的生产力和尽可能快的构建速度而构建的。

开箱即用地支持集中公共依赖声明是有意义的。目前,当您查看不同的 Gradle 项目时,很有可能每个项目都实现了不同的方法。Cédric Champeau 在此博客中迭代了一些现有模式。拥有标准解决方案可以更轻松地作为开发人员入门。塞德里克进一步指出

长话短说:目录的存在使可发现性和维护变得更容易,但它并没有消除 Gradle 提供的任何灵活性。我们正在考虑在未来通过目录声明所有直接依赖项的方法。

在中声明依赖libs.versions.toml项允许 Gradle 在更改依赖项版本时跳过构建脚本编译。这比在脚本插件中更改相同的内容要快得多。作为在 中声明依赖项的副作用libs.versions.toml,我们可能会看到第三方工具在未来自动更新依赖项。


推荐阅读