我在项目maven依赖项中看到了如下所示,
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
</dependency>
在依赖项中没有定义任何版本,因此如果我不提供版本名称以及为什么如上所述,将会发生什么。
请问有人解释原因。答案 0 :(得分:8)
我认为你不能在你的项目的普通依赖部分中这样做。我知道允许这种情况的唯一情况是当你继承一个带有<dependencyManagement>
部分的父项目时,它用于协调一组项目中的依赖版本。然后你可以使用“简写”定义,没有版本。但它仍然有一个版本,它继承自父项目中定义的依赖项。
pom中还有一些其他地方也可以删除版本,但这些地方与包含依赖项(如插件/ exlude等)并不直接相关。
答案 1 :(得分:0)
我在pom.xml中将以下maven依赖项与一个版本放在一起,并且工作正常。
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>