Управление версиями подпроекта Gradle
В настоящее время мы переносим наш проект с maven на gradle. Наша установка выглядит следующим образом:
- Родительский проект
- Подпроект 1
- Подпроект 2 (компиляция зависит от 1)
- Подпроект 3 (компиляция зависит от 2 и 1)
Все эти Maven-подпроекты имеют независимую версию
В Maven мы используем плагин версии, который гарантирует, что мы устанавливаем (используя плагин) версию, например, подпроекта 1, новая версия распространяется на все поддерево (и соответствующие зависимости в 2 и 3 также изменяются).
Я искал документы о том, что плагин Gradle Release не смог найти упоминания об этой функции. Это поддерживает это, или есть какой-нибудь другой плагин, который делает?
Второй вопрос, так как мы находимся в процессе миграции maven-gradle, возможно ли каким-либо образом объединить плагин maven version с любым таким плагином gradle? (Имейте 1 версию в maven, 2 и 3 в gradle и все еще достигайте поведения). Я предполагаю, что нет, но просто спрашиваю, не нашел ли кто-то какое-то решение:-), поэтому нам не нужно делать maven -> gradle в один большой взрыв.
Заранее спасибо!
1 ответ
Я хотел бы сохранить свою версию в отдельном текстовом файле
root/build.gradle
def versionTxt = file('version.txt').text.trim()
allprojects {
version = versionTxt
}
Затем вы можете просто настроить version.txt, чтобы увеличить версию... это разделение отлично, например, вы можете сделать историю файлов на version.txt
и увидеть изменения версии, изолированные от изменений Gradle.
Пример одного проекта здесь