我认为父母的依赖管理是否具有传递性? 从来没有在文档中明确地看到这一点,但对我来说这似乎很明显......
以下是我所拥有的:
+-----------------------+
| Parent 1 |
|-----------------------|
| dependencyManagement: |
| lib1: 1.0.0 |
+-----------------------+
^
|
|
+-----------+-----------+
| Parent 2 |
|-----------------------|
| dependencyManagement: |
| lib2: 1.0.0 |
+-----------------------+
^
|
+-----------+-----------+
| Project A |
|-----------------------|
| dependencies: |
| lib1 |
| lib2 |
+-----------------------+
当我尝试安装项目A时,我得到:
[ERROR] 'dependencies.dependency.version' for lib1-digester:jar is missing. @ line XX, column YY
我还尝试使用导入范围在父级2 的dependencyManagement中添加父级1 条目,但没有成功。
我的项目A 如何让其所有父级层次结构管理版本?
答案 0 :(得分:2)
阅读Maven Docs后,您似乎是对的。
通常,这些项目的所有依赖项都在项目中使用,项目从其父项或其依赖项继承的任何依赖项都是如此。
答案 1 :(得分:2)
尝试更新到最新版本的Maven 3. IIRC,dependencyManagement
元素的继承存在一些错误。
答案 2 :(得分:2)
A与其他空项目做了一个小例子,一切都很顺利...... 最后,有一些奇怪的事情,这就是发生的事情。 我实际上更喜欢那样:
+-----------------------+
| Parent 1 |
|-----------------------|
| dependencyManagement: |<----------------------+
| lib1: 1.0.0 | |
+-----------------------+ |
^ |
| +-------------+------------+
| | Project B |
+-----------+-----------+ |--------------------------|
| Parent 2 | | dependencies: |
|-----------------------| | somethingWrong: 1.0.0 |
| dependencyManagement: | +--------------------------+
| lib2: 1.0.0 |
+-----------------------+
^
|
+-----------+-----------+
| Project A |
|-----------------------|
| dependencies: |
| lib1 |
| lib2 |
+-----------------------+
Project B 的pom.xml出错 它不会对我的问题产生任何影响,但纠正无关的 pom解决了我的问题......
抱歉浪费时间