回答:
" buildscript
"構成セクションは、gradle自体用です(つまり、gradleがビルドを実行する方法の変更)。したがって、このセクションには通常Android Gradleプラグインが含まれます。
" allprojects
"セクションは、Gradleによってビルドされるモジュール用です。
通常、リポジトリセクションは両方ともjcenterから依存関係を取得するため(またはMaven Centralであるため)、両方のリポジトリセクションが同じになります。ただし、「依存関係」セクションは異なります。
各モジュールの依存関係は一意であり、各モジュール内の「build.gradle」ファイルにあるため、通常、「allprojects」の「依存関係」セクションは空です。ただし、すべてのモジュールが同じ依存関係を共有している場合は、ここにリストできます。
TL; DR:buildscript
プラグインの検索に役立ち、allprojects
すべてのプロジェクトに適用されます
https://docs.gradle.org/current/userguide/userguide_single.html#applyPluginBuildscriptは言う
外部jarファイルとして公開されたバイナリプラグインは、ビルドスクリプトのクラスパスにプラグインを追加してからプラグインを適用することで、プロジェクトに追加できます。
あなたが必要とするのでbuildscript
、プラグインを見つけるために、Gradleのためとして、
Gradleのコアは意図的に、実際の自動化にはほとんど提供していません。Javaコードをコンパイルする機能などの便利な機能はすべて、プラグインによって追加されます。プラグインは、新しいタスク(JavaCompileなど)、ドメインオブジェクト(SourceSetなど)、規則(Javaソースがsrc / main / javaにあるなど)を追加し、コアオブジェクトと他のプラグインからのオブジェクトを拡張します。
Project APIは
allprojects
、現在のプロジェクトとその下のすべてのサブプロジェクトのリストを返すプロパティを提供します。allprojects
クロージャーを使用して呼び出す場合、クロージャーのステートメントはに関連付けられたプロジェクトに委任されallprojects
ます。
build.gradle
なく、モジュールのに置きますbuild.gradle
。これは、この質問で扱われます