Как должны быть объявлены зависимости между модулями в многомодульном проекте maven? - PullRequest
1 голос
/ 07 октября 2019

Предположим, у меня есть многомодульный проект maven, состоящий из родительского P и его модулей A и B. Как объявить зависимость от B до A?

До сегодняшнего дня я всегда использовал следующее в B:

<dependency>
  <groupId>org.example</groupId>
  <artifactId>A</artifactId>
  <version>${project.version}</version>
</dependency>

Но коллега только что упомянул, что этотакже возможно создать запись управления зависимостями для A в родительском P

<depednencyManagement>
  <dependency>
    <groupId>org.example</groupId>
    <artifactId>A</artifactId>
    <version>${project.version}</version>
  </dependency>
</dependencyManagement>

, а затем B нужно только указать:

<dependencies>
  <dependency>
    <groupId>org.example</groupId>
    <artifactId>A</artifactId>
  </dependency>
</dependencies>

Есть ли недостаткилюбой из этих методов? Намеревается ли Maven использовать его на самом деле? Или, на самом деле, я пропускаю другой стиль?

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...