想象一下我有一个具有以下结构的Maven项目:
-- Client (Used as dependency in other projects to communicate with Server)
---- pom.xml
-- Common (Domain module with classes used by both Client and Server)
---- pom.xml
-- Server (Actual application that is deployed and served in production)
---- pom.xml
pom.xml
服务器和客户端都依赖于Common。
我正在寻找一个解决方案,使我的CI解决方案(Jenkins)能够评估自各自构建以来的成功构建以来,我的SCM中的任何子模块是否有任何更改(不确定最佳跟踪方法)最后一次成功构建,也许使用git标签)。这是因为我在每个模块的管道中有不同的行为,并且当只更改一个模块时,我不想不必要地运行所有这些行为。我期望的行为如下:
无关紧要的是,我在pom.xml中更新了服务器模块的版本,但是我确实需要在客户端模块中跟踪该版本(因为它已在其他项目中用作依赖项)。