Я пытаюсь разработать решение, которое позволяет одному приложению Virgo обеспечить обратную совместимость для интеграции с несколькими версиями внешнего поставщика услуг.Возможно ли построить несколько версий одного и того же модуля?
Например, приложение, называемое PortalApp, представляет собой портал, который в настоящее время интегрируется с версией 3rdPartyApp версии 2.3. ThirdPartyApp v3.0 скоро выйдет с новыми функциями, поэтому новая версия PortalApp будет иметь функции, которые не будут работать со старой версией ThirdPartyApp.
Я не требую возможности динамически обслуживать обе версии во время выполнения, только один или другой. Я уже установил, что у меня могут быть две версии модуля в репозитории Virgo usr и загрузка того или другого на основе файла .plan, используемого при запуске сервера.
Для простоты можно считать, проект в настоящее время создан так:
PortalApp - web-app - ThirdPartyProvider
Есть целый ряд других модулей, которые зависят от ThirdPartyProvider, поэтому изменение артефакта бы разорвать эти цепи. Я бы хотел создать две разные версии одного и того же модуля. Что-то вроде этого:
PortalApp - web-app - - 1.0 - - 2.0 - ThirdPartyProvider - - 1.0 - - 2.0
Я попытался создать родительский pom.xml в веб-приложение (упаковка: POM), которые были определены как 1.0 и 2.0 в качестве модулей, но только один из них строит.
Может ли одна сборка проекта PortalApp построить обе версии модуля?
Почему вы хотите построить 2 версии? один для версии 2.3, а другой для 3.0, который подходит? –
Да. Это точно, Эдду. Проблемой является требование продолжать добавлять функциональные возможности для обеих версий. В противном случае я мог бы архивировать старый модуль и добавить шаг сборки, чтобы переместить его в репозиторий Virgo usr. – Tweeds