Как исправить эту адскую зависимость Maven - PullRequest
0 голосов
/ 16 февраля 2019

У нас есть проект Java 8 maven, который за последние месяцы стал довольно большим, а сборка стала сложной (неисправной).

Структура в настоящее время выглядит примерно так:

git repo 1:
    module 1:
        sub-module A
            depends on: sub-module C
        sub-module B
            depends on: sub-module A

git repo 2:
    module 2:
        sub-module C
        sub-module D
            depends on: sub-module A

Вот текущий процесс сборки при запуске с пустым .m2 каталогом maven:

  • Сначала clean install модуль 2 (не работает на подмодуле D).
  • Затем clean install модуль 1, clean install модуль 2 снова.

Iна самом деле не знаю название проблемы такого рода или каковы стандартные решения для этого.Цель состоит в том, чтобы иметь возможность собрать проект за один шаг.

Должны ли мы объединить два репозитория git и создать большой модуль maven для модулей 1 и 2?

1 Ответ

0 голосов
/ 16 февраля 2019

Кажется, что у вас есть циклические / циклические зависимости, где repo1 зависит от repo2, а repo2 зависит от repo1, что, очевидно, является плохой идеей.

Ваши два варианта:

  1. Поместите свои «библиотечные» модули (модули A и C) в свои собственные, отдельные репозитории git, чтобы удалить циклические зависимости (иначе как chicken-orпроблема с яйцом)
  2. Иметь единую (монолитную) многомодульную сборку для всего

Есть плюсы и минусы для обоих подходов

...