私はそれに3つのモジュールを持っているAndroidスタジオのプロジェクトがあります。 A、B、C. AはCに依存し、BはCに依存します。 私はビルド時間を短縮しようとしています。私はassembleRelease/assemblyeDebugタスクを実行するたびにすべてのモジュールをビルドすることに気付きました。 ビルドするたびにモジュールAはAとCをビルドするだけです。Bはそのタスクに依存しないからです。 モジュールAをビルドするたびにモジュールBがビルドされないようにするにはどうすればよいですか?ビルドAndroid Studioのモジュール除外
モジュールAの依存関係:
dependencies {
compile project(path: ':c', configuration: 'release')
provided files('libs/some-lib.jar')
}
モジュールBの依存関係:
dependencies {
compile project(path: ':c', configuration: 'debug')
}
モジュールCの依存関係:あなたはGradleのを使用する場合は、タスクを実行するためのダイアログを投影し
dependencies {
compile files('libs/other-lib.jar')
}
どのようにタスクを実行していますか?コマンドラインから、またはAndroidスタジオのGradleダイアログから – jdv
私はgradleダイアログからタスクを実行していました。今はコマンドラインからタスクを実行していて、ビルド時間が大幅に減りました。明らかに、gradleダイアログはビルドしようとしているすべてのモジュールを構築します –
何が起こっているのですか注意してください)Android Studioからサブモジュールタスクを実行することは、実際にプロジェクトのルートからタスクを呼び出すことです。ルートには通常すべてのリファレンスが含まれているため、設定されたビルドツリーにはすべてのモジュールが含まれます。サブモジュールタスクを実行しているAndroid Studioの2番目のインスタンス/ウィンドウを起動すると、そのモジュールとその依存関係に基づいてビルドツリーが作成されます。これは、Gradleログで簡単に確認できます。 – jdv