android - Gradle的执行顺序
ringa_lee
ringa_lee 2017-04-17 16:26:26
0
6
458
ringa_lee
ringa_lee

ringa_lee

全員に返信(6)
大家讲道理

質問 1
Gradle の解析順序: ルートプロジェクトの settings.gradle、次にルートプロジェクトの build.gradle、次に各サブプロジェクト。したがって、プロジェクトの下の build.gradle は、アプリの下の build.gradle よりも前になります。
質問 2
build.gradle では、apply plugin: を通じてプラグインを導入するか、apply from .gradle 関数定義を通じて他のプラグインを導入できます。または Gradle スクリプト内のタスク
質問 3
あなたが言及したチェックとクリーンは、実際には、通常、フックは Gradle のライフサイクルを指します。

  • setting.gradle の解析後、build.gradle の解析を開始する前に、ここで何かをしたい場合 (build.gradle の学校ベースの内容を変更する)、次のように記述できます。 in beforeEvaluate
    たとえば、サブプロジェクトの 1 つで適用プラグインを変更しましたが、それはライブラリ プロジェクトであることが判明したので、それをアプリケーションとして扱う必要があります:

リーリー
  • すべての build.gradle 解析が完了し、タスクの実行が開始される前に、すべてのスクリプトが解析され、タスクやプラグインなどのすべての情報も取得できます。生成、この時点で何かをする必要がある場合は、afterEvaluate

に書くことができます リーリー
  • 各タスクは doFirst、doLast を定義できます。これらは、このタスクの実行前または実行後に実行されるコードを定義するために使用されます

リーリー

質問 4
gradle のベースとなっている言語は groovy であり、プログラミング フレームワークでもあります:
公式ドキュメント: https://docs.gradle .org/current/ dsl/
Android プラグインのドキュメント: https://github.com/google/android-gradle...
最後に、プログラミングから gradle を確認する必要があります。ドキュメントを参照して問題を解決してください:http://m.blog.csdn.net/article/details?i...

いいねを押す +0
Ty80

私の見解は、gradle のタスクには、アセンブル、チェック、ビルドの 3 つのタスクというように、実行順序があるということです。これら 3 つのタスクにはすべて依存関係があります。gradle の実行順序に従って、依存するタスクが最初に実行されます。gradle android プラグインの公式ドキュメントと gradle

のドキュメントを読むことをお勧めします。
いいねを押す +0
Ty80

AS で表示される .gradle ファイルは、実際には構成ファイルとみなされるべきため、実行順序を厳密に指定することはできません。実際、.gradle ファイルでコンパイル プロセスを構成しただけです (ビルド、アセンブルなどの通常のプロセスのほとんどは AS が定義されています。この時点で、.gradle で構成するパラメータは、実際には .gradle で使用されるパラメータです)もちろん、これらのプロセス タスクを自分で設定することもできます。すべての Gradle タスクは Gradle パネルから表示できます。
振り返ってみると、gradle と同期するときも含めて、gradle ファイルを作成するとき、実際にはコンパイル タスクを宣言しているだけなので、この時点ですべてのタスクが宣言されますが、これらのタスクがコンパイル中に実行されるわけではありません。どのタスクが実行されるかは、タスク間の呼び出しによって異なります。

いいねを押す +0
黄舟

@Youming の意見に同意します。.gradle ファイルは、構成ファイル、大規模なプロジェクト、サブプロジェクト、大規模な環境、およびサブ環境に属しません。実行中には、最初に環境、次にタスクという順序があります。これが基本的なルールです。

いいねを押す +0
Peter_Zhu

「gradle for android」を読むことをお勧めします。オンラインで電子版が入手でき、android-plugin についてはほぼ理解できました。

いいねを押す +0
巴扎黑

非常に優れた Gradle 学習記事を共有してください: http://blog.csdn.net/u0108184...

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!