Maven版本控制子模块的依赖关系

时间:2013-08-01 01:52:48

标签: maven dependencies versioning

我们运行多个站点并使用Maven构建代码。

每个站点都有自己的pom.xml,其中几个都有子模块。

站点B依赖于站点A的子模块。

站点B在.m2 / repository中找到此依赖项。

目前,站点B的pom.xml指定了依赖项名称和版本。

我们想知道如何根据我们的开发和发布过程处理子模块的版本控制,以及与依赖于另一个子模块的站点相关,例如站点B对站点A的子模块。

对于主站点,我们是否应该为每个快照和版本增加子模块的版本(保持所有版本号相同),或者只在子模块更改时才更改子模块版本?

除了通过新版本的通信,编辑站点B的pom.xml,更新依赖版本,告诉站点B有一个新版本的子模块可以找到吗?

我们尝试从站点B pom.xml中的依赖项规范中删除该版本,但之后看到它查找了依赖项/子模块与站点B的代码具有相同的版本。

我猜我们可以在Jenkins中设置一些东西,以便在版本更改时更新pom.xml依赖项......但也许有更好的方法?

我刚看到这个,这非常有帮助(例如“发布”和“最新”)......

How do I tell Maven to use the latest version of a dependency?

1 个答案:

答案 0 :(得分:0)

如果你阅读了你所链接的整个Q& A,你会发现LATEST和RELEASE存在很多问题,第一个问题是它们在Maven 3中不再受支持了。给出的答案提到了{ {1}}和versions-maven-plugin,如果这是您想要的,那些可能对自动更新有用。

如果你只是想知道什么时候发生了变化,那么版本插件有报告你可以作为maven-scm-plugin阶段的一部分运行以产生你想要的信息,那么你可以在时机成熟时更新依赖关系。

site