В чем разница между dependencyManagement
и dependencies
? Я видел документы на веб-сайте Apache Maven. Кажется, что зависимость, определенная в dependencyManagement
может использоваться в его дочерних модулях без указания версии.
Например:
Родительский проект (Pro-par) определяет зависимость в dependencyManagement
:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8</version>
</dependency>
</dependencies>
</dependencyManagement>
Тогда в потомке Pro-par я могу использовать junit:
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
</dependencies>
Однако мне интересно, нужно ли определять junit в родительском pom? Почему бы не определить его непосредственно в нужном модуле?