我通常在 parent-project/pom.xml
中放一个 <dependencyManagement>
节。这个 <dependencyManagement>
部分包含对子模块的所有依赖项的声明和版本,如下所示(即没有 <scope>
元素) :
<dependencyManagement>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
</dependency>
</dependencies>
</dependencyManagement>
在所有子模块(例如 moduleX/pom.xml)中,我有:
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
显然,在这个示例中,我为相同的依赖项多次重复 <scope>test</scope>
(在每个需要 junit 的子模块中重复一次)。
我的问题是:
有关 <scope>
申报的最佳做法是什么?
把它放在 <dependencyManagement>
里是不是更好?
还是把它放在子模块的 <dependencies>
部分更好(就像本文一样) ?为什么?
这个问题有确切的答案吗?