【发布时间】:2015-06-11 11:34:52
【问题描述】:
考虑以下场景,
我开发了一个依赖于工件的 maven 工件(假设依赖项是 artifact_a)。
artifact_a 还依赖于其他一些工件artifact_b。这两个都不是我开发的。
现在,我还需要在我的工件中使用 artifact_b 中的功能。
即使我没有在我的工件 pom 中添加 artifact_b 的依赖项,我的工件仍然可以成功构建,因为我自动通过 artifact_a 依赖项获取它。
我有两个选择,
- 显式添加
artifact_b依赖项。这将是多余的,并且 如果我不添加与artifact_a中添加的相同版本,我会添加 不知道会发生什么 - 不要显式添加
artifact_b依赖项。如果我不添加它 明确地,当我增加artifact_a的版本时,新版本 可能不再依赖artifact_b,导致我的构建失败 人工制品。另外,如果我有很多依赖项,可能很难 查找依赖项是否通过 current 继承 依赖关系。
有推荐的吗?如果没有,有什么更好的方法?
【问题讨论】:
-
Maven 处理传递依赖,通常是正确的。如果依赖项需要其他东西,显然它就在那里,或者依赖项无法使用它。