假设我有一个在依赖管理中root定义的Maven 父 POM foo:bar:1.0.0。我有另一个parent用作root父级的父 POM(只是为了向示例添加另一个层)。最后,我有一个物料清单bom,它用作root其父级,但foo:bar:2.0.0在其依赖性管理中重新定义。
在我的项目中app,我继承parent并在依赖管理部分导入 BOMapp
root (foo:bar:1.0.0) <- parent <- app+bom
^
|
bom (foo:bar:2.0.0)
Run Code Online (Sandbox Code Playgroud)
哪个依赖管理部分获胜?我可以获得哪个版本foo:bar?
我知道如果我直接包含foo:bar在 的依赖管理部分中app,它将覆盖从父级继承的依赖管理部分。但是,在依赖管理部分导入BOM 是否等同于直接将其包含在依赖管理部分中,并且足以覆盖父级的 BOM?或者foo:bar从父级继承的依赖管理优先?