У меня есть вопрос, который, вероятно, очень похож на этот .Мне нужно решить то, что я представляю себе как довольно распространенную проблему - как настроить Maven для создания нескольких вариантов одного и того же артефакта - но мне еще предстоит найти хорошее решение.
У меня естьмультимодульный проект, в результате которого плагин assembly
генерирует артефакт.Однако часть сборки включает библиотеки, которые существенно изменились в недавнем прошлом, в результате чего некоторым пользователям проекта требуется версия библиотеки N, а другим - версия N + 1.В идеале, мы просто должны автоматически генерировать несколько артефактов, например theproject-1.2.3.thelib-1.0.tar.gz
, theproject-1.2.3.thelib-1.1.tar.gz
и т. Д. (Где это версия 1.2.3 нашего проекта, работающая с библиотекой версии 1.0 или 1.1).
Rightтеперь у меня есть набор свойств по умолчанию, которые создаются для последней версии рассматриваемой библиотеки, а также профиль для создания старой версии.Я могу развернуть один или другой путь таким образом, но не могу развернуть оба в одной сборке.Вот ключевая проблема, которая отличается от приведенного выше вопроса: я не могу автоматизировать сборку один-один-убрать-другой- внутри плагина release
.
Обычно мы'd mvn release:prepare release:perform
из корня многомодульного проекта, чтобы позаботиться о развертывании всего на нашем внутреннем Nexus.Однако в этом случае мы должны выбрать один - либо запустить профиль старой библиотеки, либо запустить без и получить новый.Мне нужен плагин релиза для развертывания обоих .Это просто невозможно?Я должен представить, что мы не первые, кто хочет, чтобы наши автоматические сборки генерировали поддержку для разных платформ ....