Как освободить модуль Maven независимо от других модулей?

У меня есть веб-приложение Java (GLF), которое имеет следующую структуру

GLFBuilder (multimodule)
- GLFCoreBuilder (multimodule)
  - GLFCore (depends on other core/library projects)
  - GLFDataModel
- GLFWebBuilder (multimodule)
  - GLFFrontEnd
  - GLFFrontEndWeb
  - GLFIntegration (to create app war)

Все проекты субмодулей, перечисленные выше, на данный момент имеют одного и того же родителя (например, GLFFrontEnd это ребенок GLFWebBuilder, GLFCore это ребенок GLFBuilder...) чтобы иметь возможность поделиться общей конфигурацией / зависимостями.

Я тоже настроил dependencyManagement включить все подмодули с соответствующими свойствами, определенными так, чтобы мне не нужно было указывать versionГде-нибудь в подмодулях взаимозависимости.

Я должен упомянуть, что все модули (многомодульные и субмодули) в настоящее время используют одну и ту же версию SNAPSHOT, и (вздох) моя компания по-прежнему выпускает приложение, используя версии SNAPSHOT, чтобы избежать работы с номерами версий, но среди всех проблем, которые это приносит, также значительно увеличивает время сборки в нашей среде CI.

Я хотел бы иметь возможность выпустить стабильную версию (без SNAPSHOT) одного из модулей независимо от других.
Это звучит логично, учитывая, что я могу что-то изменить в GLFFrontEnd который не имеет ничего общего с моими основными библиотеками.

Я знаю, что когда есть отношения родитель-ребенок, дети не могут быть освобождены как стабильные (без SNAPSHOT) без освобождения родителя, что имеет "цепной эффект" в иерархии проектов.

Подходит ли плагин Maven Release для этого сценария?

Спасибо

0 ответов

Другие вопросы по тегам