Трудно быть конкретным в отношении вариантов, потому что мы мало знаем о вашем проекте.Похоже, так или иначе, спецификации версий зависимостей являются здесь ключевым понятием.
В простом случае, если у меня есть модуль A, который использует модуль B, и я модифицирую модуль B, мне, вероятно, придется модифицировать модуль.А для обновления информации о его зависимости.Поскольку зависимости могут быть указаны с использованием диапазонов версий, это не обязательно так;особенно если вы используете что-то вроде настоящей архитектуры REST для изоляции одного модуля от изменений в другом.
Но независимо от того, так ли это, звучит так, будто вы говорите, что хотя бы иногда ваша команда обновляет номер версии в модуле , даже не меняя никакой информации о его зависимости .В крайнем примере, возможно, каждый модуль просто предоставляет сервис со строго стандартизированным интерфейсом;или, может быть, какое-то другое приложение использует модули, но они не используют друг друга;или ...
В этом случае, я предполагаю, что вопрос заключается в том, перевешивает ли простота стоимость изменения номера версии (буквальная стоимость внесения изменения плюс любое семантическое значение, которое номера версий могли бы иначе передать)ваша команда может найти из-за наличия синхронизированных номеров версий.
Лично я бы позволил номерам версий варьироваться независимо и использовал бы POM «верхнего уровня», который знает, какие версии каждого модуля работают вместе, чтобы сформировать «версию Xприложение в целом ".Это POM верхнего уровня должно использовать конкретные номера версий, а не диапазоны, чтобы обеспечить воспроизводимые результаты сборки.Затем вы модифицируете любой модуль (модули), который вы изменяете, и модифицируете любой модуль, чья информация о прямой зависимости затрагивается (потому что это, вероятно, все равно нуждается в перестроении), и вы модифицируете POM верхнего уровня, и это все.
Но это только мое мнение, и оно охватывает только некоторые распространенные сценарии.Это действительно то, что команда должна определить, основываясь на знании конкретного проекта.