使用单个POM的多项目Maven

时间:2018-11-16 00:35:40

标签: maven

我有各种项目(比如说项目1,项目2,项目3等...)。它们位于BitBucket中的不同存储库中。 其中一些项目共享相同的版本。我想检查我是否可以使用超级父母POM?我想让项目监听上级版本的POM,这可能吗?谷歌周围有没有找到相关的有用信息。

enter image description here

任何指针都会有所帮助

谢谢

1 个答案:

答案 0 :(得分:0)

无论您将它们存储在哪里,都可以对所有项目使用一个父POM。唯一的要求是将POM部署在Maven存储库中,并且在任何该项目中都可用。它可以是Maven Central或JCenter,也可以是您的企业Maven存储库,例如Artifactory或Nexus。实际上,许多开源项目都依赖于所谓的oss-parent POM。 Take a look at Guava,例如,它取决于sonatype/oss-parents。有些公司会自己创建父母,例如FasterXML

第二个问题的答案通常为“否”。您不能简单地“监视”此类父POM中的版本更改,除非您:

  1. 拥有它们。最简单的方法。每当您更新父POM时,您都可以触发下游构建或火灾警报,或在子POM中自动创建问题/故障单。
  2. 配置CI / CD来执行此操作。基本上与1相同,但是您只需要注意更新并触发操作即可。
  3. 使用将执行此操作的第三方服务。曾经有一个叫VersionEye的人,但是他们不见了。我听说Snyk在做类似的事情。
相关问题