如上所述,我的项目中的依赖关系:树目标抱怨已经在其父pom的依赖关系管理部分中声明的依赖关系缺少依赖关系版本。请注意,相关的依赖项是新的,只是添加到管理部分。
答案 0 :(得分:24)
父pom确实已经在依赖关系管理部分中包含了依赖声明。但它没有被考虑在内。为此,我们应该执行命令在本地maven仓库中安装pom文件。
mvn -f <the absolute path to the parent's pom file> install -N
请注意,当maven解析依赖项时,它始终会查找repo中已有的pom文件。相反,不考虑本地文件。
答案 1 :(得分:9)
Maven抱怨缺少依赖性的另一个原因是在父pom中声明的依赖关系具有&lt;类型&GT;这与儿童pom寻找的类型并不对应。
答案 2 :(得分:6)
我会补充这一点作为对Hui Wang答案的评论,但由于某些原因,评论似乎已被禁用。
无论如何,在我的情况下,我不得不使用以下命令:
mvn -f <path to the parent's pom file> install -N
我正在使用maven 3,所以也许它与maven 2不同。
我不能让Hui的命令在没有-f的情况下工作,并且父pom文件的路径不必是绝对的(相对和绝对工作)。