У меня есть 5 проектов Android, все они имеют похожие зависимости, такие как Dagger, retrofit, Rx и так далее. Есть ли стандартный способ управления версиями всех зависимостей, при котором все проекты используют одну и ту же версию определенной библиотеки.
Образец:
implementation "com.google.dagger:dagger:${dagger_version}"
implementation "com.squareup.retrofit2:retrofit:${retrofitLibVersion}"
implementation "com.squareup.retrofit2:converter-gson:${retrofitLibVersion}"
implementation "com.squareup.retrofit2:converter-scalars:${retrofitLibVersion}"
В приведенном выше примере dagger_version и retrofitLibVersion - это то, что я хочу определить в одном месте и использовать во всех проектах.
Любой вклад очень ценится.
Обычный подход - определить их как ext в корневом проекте build.gradle:
ext {
dagger_version = '2.19'
retrofitLibVersion = '2.4.0 '
}
Этого также можно добиться, загрузив удаленный или локальный файл Gradle и apply его в корневой проект или в каждый подпроект по мере необходимости:
apply from: 'versions.gradle'
Как разместить удаленный файл Gradle?
все мои проекты - самостоятельные проекты. Я просто хочу, чтобы все проекты были согласованы.