Когда именно maven загружает зависимости? - PullRequest
0 голосов
/ 10 июля 2020

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

Ниже приводится упрощенное объяснение моего варианта использования:

У меня есть задание Jenkins Build, в котором есть 2 этапа (поскольку мой код зависит от снимков других внутренних проектов, я использую -U для обновления снимков, поскольку я хочу создать свой код с последними снимками состояния других проектов):

1. Быстрая проверка (проверьте, компилируется ли весь код)

 mvn test-compile -U

3. Медленная проверка (сборка и модульное тестирование всего кода)

mvn verify -U scoverage:report-only

Теперь, во время выполнения шага 1, если кто-то обновит моментальный снимок зависимости , я буду выполнение моей тестовой компиляции и проверка целей на разных снимках.

Я бы хотел этого избежать, и мне интересно, если я удалю -U из шага 2, все зависимости все равно будут обновлены при выполнении шага 1? Или может быть случай, когда на шаге 1 загружаются только те зависимости, которые имеют отношение к нему, для запуска фазы тестовой компиляции, в то время как фаза проверки требует надмножества зависимостей?

Ответы [ 2 ]

1 голос
/ 10 июля 2020

Цель dependency: resolve по умолчанию привязывается к фазе жизненного цикла generate-sources, третьей фазе после проверки и инициализации. Тогда все они доступны локально.

Согласитесь, удаление -U на 2-м шаге, вероятно, является правильным, если действует на один и тот же pom.

Это также предполагает локальное репо указывается c (частный) для задания. По умолчанию репозиторий maven.local является общим для пользователя в $ {user.home} /. M2. Несколько исполнителей на одном узле будут использовать репо по умолчанию.

0 голосов
/ 10 июля 2020

AFAIK сохраняется, чтобы удалить -U со второго шага.

Все зависимости разрешаются в самом начале каждой сборки.

...