【发布时间】:2011-09-11 00:07:40
【问题描述】:
在一个大型 Maven 2 项目中,使用依赖管理来确保在整个系统中只使用一个版本的依赖是很好的。这使系统保持一致。
但是当我生成有效的 POM 时,我没有机会看到依赖版本的来源。同样,在层次结构顶部的 POM 中,我不知道在子 POM 中的哪个位置真正使用了依赖管理部分的定义版本。
那么我该如何保持依赖管理的清理呢?当我删除一个项目中的依赖项时,如果仍然需要它,我总是会检查所有其他项目,以便我也可以从顶部的依赖项管理中删除?
另外,我如何建立依赖管理,确保它不会在子 POM 的某个地方重复?当我添加依赖项时,我总是检查所有其他项目,看看它是否可以在依赖项管理中聚合到顶部?或者您是否总是将所有依赖版本从一开始就移到顶部,以便它们始终只在一个位置?
感谢您的任何想法。
【问题讨论】:
-
我刚刚想到的另一个想法:为什么不在所有模块中使用相同的版本号,并尽可能多地依赖 ${project.version}。理想情况下,我只有顶部 POM 中的版本号,并在其他任何地方使用该变量。像这样我根本不需要依赖管理,所有内部依赖版本都是直接用变量指定的。
标签: java maven dependencies pom.xml