Maven依赖关系与多个项目的依赖关系管理

时间:2013-06-25 14:49:29

标签: maven dependencies dependency-management

很抱歉再次提问。如果我做对了,请告诉我?

我们有一个父pom和多个模块。现在,如果所有子项目都想继承相同的jar文件(例如spring),我可以将它们放在父项目pom中,不需要将它们包含在子pom中。

如果我在父pom中放入依赖项,它们不会包含在所有子项目中,但我可以通过添加它们来包含我需要的那些(例如测试),而无需指定版本。

这是对的还是完全不对的?希望我明白我的问题。

我需要的是一个拥有所有依赖关系的巨型父pom。孩子们应该自动获得一些常见的依赖关系以及每个孩子需要的特定依赖关系。

由于

哈里什

1 个答案:

答案 0 :(得分:16)

在dependencyManagement中,您可以声明依赖项版本,排除项以及其他可以让您为多个项目管理它们(例如父pom)的东西。

在依赖关系中,您然后声明依赖项的实际使用/需要,如果依赖项是在父pom中管理的,则可以在不使用版本的情况下进行管理,并且它将被继承,因此在您的下游使用中是一致的父母pom。

相同的逻辑适用于pluginManagement和插件,​​包括插件配置。