Я думаю, что у меня есть база данных, в которой хранятся все проекты и их версии: как «в стадии разработки» (скажем, на TRUNK), так и «RELEASED» (в какой-то ветке релиза).Таким образом, сохраняя их, мы можем связать их и их версии и контролировать все это через централизованный графический интерфейс.Как и каждый раз, когда мы меняем версию проекта с графического интерфейса пользователя, все версии проектов меняются в соответствии с их версиями POM, которые хранятся в базе данных.
Примером может быть: Проекты A, B, C, D,E, F
- Project A версии 1.0.0 зависит от Project B версии 2.3.0 и Project C версии 1.2.5
- Project C версии 1.2.5 зависит от Project D версии3.1.0
- Проект D версии 3.1.0 зависит от Проекта E 1.2.1 и Проекта F 3.2.4
A 1.0.0
\_ B 2.3.0
|_ C 1.2.5
\_ D 3.1.0
\_E 1.2.1
|_F 3.2.4
и
- Проект A версии 1.1.0 зависит от Проекта B версии 2.4.0 Проект C версии 1.3.5
- Проект C версии 1.3.5 зависит от Проекта D версии 3.2.0
- Проект D версии 3.2.0 зависит от Проекта E 1.3.1 и Проекта F 3.3.4
A 1.1.0
\_ B 2.4.0
|_ C 1.3.5
\_ D 3.2.0
\_E 1.3.1
|_F 3.3.4
Итак, когда мы изменяем версию Проекта A сПользовательский интерфейс, все версии зависимостей изменяются соответственно, в зависимости от сохраненных версий базы данных и связей междупроекты.Чтобы у вас была «общая картина» каждый раз, когда вам интересно посмотреть, как ваша версия проекта выглядит с точки зрения зависимостей и какие версии проектов были изменены с выпуска на другой.
С другой стороныС другой стороны, это может быть расширено, например, когда мы хотим выполнить релиз проекта, нам просто нужно поменять версии через пользовательский интерфейс, и эти изменения будут переданы в POM проекта.
Это реальная идея с вашей точки зрения, ребята?Спасибо