Подтвердить что ты не робот

Как обновить зависимости Gradle к их последней версии

Есть ли простой способ получить gradle для обновления зависимостей до их последней доступной версии?

Для воспроизводимости сборки все мои зависимости определяются с номером версии, подобным этому в файле build.gradle:

dependencies {
    compile 'namespace:package1:version'
    compile 'namespace:package2:version'
    compile 'namespace:package3:version'
}

Периодически я хочу обновить каждый пакет до их последней версии. Обычно это первое, что я делаю для нового спринта после выпуска.

Настоящая боль делает это вручную для каждого пакета. В идеале мне бы хотелось, чтобы команда обновила файл build.gradle для меня, но по крайней мере команда, которая печатает, какой пакет нуждается в обновлении и какой номер последней версии.

В рубиновой земле я буду запускать обновление пакета.

4b9b3361

Ответ 1

Это все, что я смог придумать. Я с радостью приму другой ответ, если будет менее ручной метод этого.

  • В студии Android я заменю каждую версию зависимостей на плюс: compile 'namespace:package1:+'

  • Синхронизировать или создать проект, который приведет к разрешению всех зависимостей до их последней версии.

  • В Android Studio поместите курсор на каждую строку зависимостей в build.gradle и нажмите alt + enter, и вы можете выбрать Заменить с конкретной версией

Ответ 2

Это не очень хорошая практика, так как библиотеки могут включать изменения, которые могут нарушить ваш код.

Общий "допустимый" синтаксис для

compile 'namespace:package:major_version.minor_version.revision'

будет выглядеть как

compile 'namespace:package:1.0.+'

с учетом ревизии используется авторами библиотеки в качестве исправлений ошибок и обновлений обновлений

Примечание: Я просто сделал это, и вы могли бы сделать

compile 'namespace:package:+'

Изменить:
A Proof Of Concept моего последнего последнего комментария, который вы можете протестировать.
Это было сделано через 5 минут, поэтому не ожидайте, что он будет идеальным и гибким.

Ответ 3

Добавить в build.gradle:

plugins {
  id 'com.github.ben-manes.versions' version '0.17.0'
}

Затем вы можете сделать gradle dependencyUpdates, чтобы получить отчет о новых версиях. В отличие от одноименного плагина Maven, похоже, нет способа автоматического обновления build.gradle.

Дополнительная документация: https://github.com/ben-manes/gradle-versions-plugin