需要の背景:
日常の開発では、プロジェクトの構築に gradle を使用することがよくあります。アプリ プロジェクトには 2 つのモジュールがあり、A はアプリケーション モジュール、B はライブラリ モジュールです。同僚 A はコンパイルして B に依存し、両方ともデバッグ バージョンとリリース バージョンを持っています。お聞きしたいのですが、Aとコンパイル版の統合が実現した場合、つまり、Aのデバッグ版をコンパイルするとBのデバッグ版もコンパイルされ、Aのリリース版をコンパイルするとBのリリース版もコンパイルされます。
実現効果図は以下の通りです。
実装:
1. すべての依存ライブラリを build.gradle に追加します。
android {
publishNonDefault true //表示该Module不使用默认配置
}
上の図では、アプリケーションは 3 に依存しているため、この文を 3 つのモジュールの build.gradle に追加します。
2. アプリケーション モジュールの build.gradle に、次のようにすべての依存ライブラリを追加します。
dependencies {
releaseCompile project(path: ':library', configuration: 'release')
debugCompile project(path: ':library', configuration: 'debug')
}
上図の例に従って、アプリケーションモジュールを追加します
dependencies {
releaseCompile project(path: ':lib-zxing', configuration: 'release')
debugCompile project(path: ':lib-zxing', configuration: 'debug')
releaseCompile project(path: ':supertoasts', configuration: 'release')
debugCompile project(path: ':supertoasts', configuration: 'debug')
releaseCompile project(path: ':material-calendarview-library', configuration: 'release')
debugCompile project(path: ':material-calendarview-library', configuration: 'debug')
}
3. 上記の要件を達成するために gradle を再構築します。