マルチプロジェクトの Gradle ビルドで、「allprojects」セクションと「buildscript」セクションの違いは正確に何なのか教えてください。どちらにもrepositories
とdependencies
タスクがあります。これはallprojects
私のプロジェクト用ですか? はどうですかbuildscript
?
buildscript {
repositories {
...
}
dependencies {
...
}
}
そして
allprojects(subprojects) {
repositories {
...
}
dependencies {
...
}
}
ベストアンサー1
「buildscript
」構成セクションは、Gradle 自体用です (つまり、Gradle がビルドを実行する方法の変更)。したがって、このセクションには通常、Android Gradle プラグインが含まれます。
「allprojects
」セクションは、Gradle によってビルドされるモジュール用です。
多くの場合、リポジトリ セクションは両方とも同じです。これは、通常、両方とも jcenter (または maven central) から依存関係を取得するためです。ただし、「依存関係」セクションは異なります。
通常、「allprojects」の「dependencies」セクションは空です。これは、各モジュールの依存関係が一意であり、各モジュール内の「build.gradle」ファイルに含まれるためです。ただし、すべてのモジュールが同じ依存関係を共有している場合は、ここにリストされる可能性があります。