我们在dependencyManagement
部分的主pom中定义了几个项目模块,以便它们可以在子poms中使用,但保持一致的版本。我认为这是非常标准的。
现在,在子POM的profiles
部分中,我想添加依赖项而不是定义版本,因为我知道父POM dependencyManagement
部分中存在此依赖关系定义。
e.g。
...
<profiles>
<profile>
<id>DEV_PC</id>
<dependencies>
<dependency>
<groupId>com.our.project</groupId>
<artifactId>module1</artifactId>
</dependency>
</dependencies>
</profile>
<profile>
...
我在构建中看到一些奇怪的行为,并想知道是否允许这种方法,或者你是否总是要在配置文件部分中定义依赖项的版本?
回答我自己的问题:
您可以使用dependencyManagement
部分中定义的依赖关系,而profiles
部分中没有版本,如上例所示。
我在下面添加了一条评论,解释了我见过的奇怪行为。