Gradle - принудительная согласованная версия для группы библиотек
У меня есть проект Gradle с несколькими подпроектами, каждый из которых может зависеть от разных версий игровых сервисов Google Play (например). Чтобы заставить Gradle использовать одну и ту же версию библиотек PGS, я написал в основном проекте:
configurations.all {
resolutionStrategy {
eachDependency { DependencyResolveDetails details ->
if (details.requested.group == 'com.google.android.gms') {
details.useVersion "10.0.1"
}
}
}
}
Поэтому я должен жестко закодировать конкретную версию PGS (10.0.1) в основном проекте, чего я категорически не хочу делать - основной проект - это только агрегатор.
Есть ли способ выполнить разрешение версии зависимости не на уровне библиотеки, а на уровне группы? Я хочу использовать максимальную версию PGS из всех зависимостей от всех подпроектов.