2つのモジュール(一般的なフロントエンドアプリケーションとバックエンド)を持つAndroidプロジェクトがあります。私は3つのbuild.gradle
ファイルを持っています(各モジュールに1つ、ルートに1つ)。依存関係ライブラリのバージョン更新がAndroidStudioプロジェクトのbuild.gradleに存在することを検出する方法
私は私の依存関係を構造化しまし方法は、後に、このような
としての私の発言のアプリbuild.gradle
ファイルで使用されるよう
ext {
// SDK and tools
MIN_SDK_VERSION = 19
TARGET_SDK_VERSION = 23
COMPILE_SDK_VERSION = 23
BUILD_TOOLS_VERSION = '24'
// app dependencies
GOOGLE_API_CLIENT_VERSION = '1.19.0'
GOOGLE_PLAY_SERVICES_VERSION = '8.4.0'
ANDROID_SUPPORT_LIB_VERSION = '23.1.0'
[...]
// backend dependencies
[...]
}
としてルートレベルbuild.gradle
に別々の変数へのすべてのバージョンを抽出することです
dependencies {
[...]
compile(group: 'com.google.oauth-client', name: 'google-oauth-client', version: rootProject.ext.GOOGLE_API_CLIENT_VERSION)
/////////////////////////////////
// Google Play Services explicit dependency
compile(group: 'com.google.android.gms', name: 'play-services-auth', version: rootProject.ext.GOOGLE_PLAY_SERVICES_VERSION)
compile(group: 'com.google.android.gms', name: 'play-services-plus', version: rootProject.ext.GOOGLE_PLAY_SERVICES_VERSION)
[...]
/////////////////////////////////
// Local Testing
testCompile(group: 'junit', name: 'junit', version: rootProject.ext.JUNIT_VERSION)
testCompile(group: 'pl.pragmatists', name: 'JUnitParams', version: rootProject.ext.JUNIT_PARAMS_VERSION)
[...]
}
注:私はどこかのチュートリアルでそのアイデアを見つけました。
しかし、私はどのバージョンのlibが利用可能か、どのようなものがアップグレード可能かなどを把握するのに苦労しています。他の人がこの問題にどのように近づいているのか不思議です。ありがとう。
更新を検出するために[gradle-versions-plugin](https://github.com/ben-manes/gradle-versions-plugin)を書きました。私のプロジェクトでは、私は座標を集中させます。 [dependencies.gradle](https://github.com/ben-manes/caffeine/blob/master/gradle/dependencies.gradle)を使用して1か所で更新できます。 –
ありがとうvm @BenManesこれは素晴らしいツールです。私は確かにあなたの集中化を採用するだけでなく、それは私が今日持っているものから一歩進んでいます - 私はそれが好きです(私はgithub、とてもかっこいい!)。あなたは正式な答えとしてこれを移してもいいですか?どうも – Creos