在多项目 gradle 构建中,有人能告诉我“allprojects”部分和“buildscript”部分之间到底有什么区别吗?repositories两者都有一个dependencies任务。是allprojects为了我的项目吗?怎么样buildscript?
repositories
dependencies
allprojects
buildscript
buildscript { repositories { ... } dependencies { ... } }
和
allprojects(subprojects) { repositories { ... } dependencies { ... } }
“ buildscript” 配置部分用于 gradle 本身(即更改 gradle 执行构建的方式)。所以这个部分通常会包含 Android Gradle 插件。
” allprojects” 部分用于 Gradle 正在构建的模块。
通常两者的存储库部分是相同的,因为两者通常都会从 jcenter(或者可能是 maven Central)获取它们的依赖项。但是“依赖项”部分会有所不同。
通常,“allprojects”的“依赖项”部分是空的,因为每个模块的依赖项都是唯一的,并且将位于每个模块内的“build.gradle”文件中。但是,如果所有模块都共享相同的依赖项,那么它们可以在此处列出。