gpt4 book ai didi

configuration - gradle 的 buildSrc 文件夹的目的是什么?

转载 作者:行者123 更新时间:2023-12-03 11:48:19 25 4
gpt4 key购买 nike

在 gradle 中,使用 buildSrc 的目的是什么?文件作为顶级文件,而不是典型的 java 项目布局(src/main/java)?

如果我有一个布局

src
main
java

或者
buildSrc
src
main
java

有什么区别(或这样做的原因)?它在多模块项目中更有用吗?即使对于一个多模块项目,我不能做类似的事情吗
proj1
src


proj2
src

然后只有一个顶级 build.gradle(与 proj1proj2 处于同一级别)定义项目中的通用设置?

最佳答案

buildSrc是一个单独的构建,其目的是构建旨在用于主构建的构建脚本的任何任务、插件或其他类,但不必在构建之间共享。(*) 它不会可以将此类类构建为主构建的一部分,因为它们必须在主构建的构建脚本甚至可以编译/评估之前就存在,并且 Gradle 在它执行任何工作之前编译/评估所有构建脚本(配置与执行阶段) .

与将所有构建代码放入构建脚本相比,buildSrc为您提供了一种更像常规代码的构建代码开发方法,作为您可以测试、导入 IDE 等的类。这是一种使构建脚本保持简单和 DRY 的方法,即使对于更复杂的构建也是如此。
buildSrc在多项目构建中更常见,因为较大的构建更有可能实现自己的自定义任务和插件。

随着时间的推移,buildSrc将成长为在单个 Gradle 调用中执行多个依赖构建的更通用的能力。

(*) 跨构建共享类是可能的,但涉及更多。特别是,您需要将类发布到存储库,并且使用构建必须从那里显式导入它们,类似于在构建之间共享生产库时。

关于configuration - gradle 的 buildSrc 文件夹的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13874680/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com