有没有办法确定 Nexus 中是否有新的 SNAPSHOT 版本的依赖项可用?理想情况下,它将是一个将组/工件/版本作为输入的命令行,如果是这种情况,它将返回 true。
假设我有 mygroup.b1:1.0.0-SNAPSHOT,它作为依赖项 mygroup.a1:1.0.0-SNAPSHOT,由我的持续部署环境进行版本控制和管理。我希望在 Nexus 中部署 mygroup.a1 的新 SNAPSHOT 时触发 mygroup.b1:1.0.0-SNAPSHOT 的构建。
就我而言,连续环境是 GOCD Thoughtworks,我想根据 pom.xml 文件(mygroup.b1 的文件)中定义的依赖关系触发管道,其中一些是 SNAPSHOT(例如 mygroup.a1)可以部署其他管道。
我查看了https://github.com/jenkinsci/maven-dependency-update-trigger-plugin,它似乎是通过检查解决方案时下载的依赖项来做到这一点的。由于这是一个 Jenkins 插件,它并不是我想要的。
我还查看了https://github.com/aresok/go-maven-poller但这个过程似乎很乏味:是否需要定义所有依赖包以便 GOCD 可以轮询 Nexus?
另一件事是版本的使用:versions-maven-plugin http://www.mojohaus.org/versions-maven-plugin/display-dependency-updates-mojo.html的display-dependency-updates目标但它确实似乎不允许对 gav 进行过滤。
编辑:添加了一个例子
编辑:添加了有关使用 maven-versions-plugin 的信息