У нас есть большой мультимодульный проект maven. С целью увеличения производительности разработки мы недавно начали развертывать снимки в удаленном репозитории (через центральную сборку) и вводили профили maven, которые означают, что пользователям нужно только проверить и построить подмножество модулей и сделать снимки для остальных. Мы также установили политику обновлений для удаленных репозиториев "никогда", чтобы убедиться, что она явна, когда мы хотим обновлять локальные снимки. Таким образом, типичная команда; mvn -Pref -U чистая установка.
Теперь, в реакторе maven, сборка для модулей, определенных в профиле, отлично работает, maven использует моментальные снимки для своих зависимостей, включая загрузку любых обновленных из удаленного репозитория (важно отметить, чтобы мы имели согласованный набор моментальные снимки, наше центральное развертывание - это все моментальные снимки модуля из нашего проекта, даже если только их несколько изменили).
Захват, похоже, когда maven затем разрешает зависимости обратно к тем локально построенным модулям из модулей, которые существуют вне профиля - если моментальный снимок был удален удален с момента создания такого модуля, то maven видит это как более обновленную версию и продолжает загрузку и перезапись локально созданного моментального снимка. Это может привести к разрыву, когда другие модули ожидают локально измененный модуль.
В принципе, я хотел бы иметь такую возможность, как "использовать локально построенный снимок" в любых модулях моего профиля по любому удаленному снимку, даже несмотря на то, что временная метка указывает, что удаленный моментальный снимок более поздний.
Что другие люди сделали в этом сценарии?
спасибо,
Пол