我正在开发项目以自动化大量相互依赖的模块的maven发布。首先,该任务涉及获取内部依赖关系的最新版本。比起在需要之前构建每个项目的构建方式。希望这种组合能让我达到我点击批量发布的目标。在获取最新依赖关系时区分来自主干的maven发布/快照而不是来自分支的发布/快照
但是我最大的问题是: 我们不时地分支项目,我们会从该分支向Nexus回购管理器发布/快照。很显然,因为groupId和ArtifactId与trunk相同,所以来自trunk的Snapshots/Releases和来自分支的Snapshots/Releases最终会在nexus中的相同位置结束。
在我们拥有了projectA,树干1.1.x版本的 而且项目B→了projectA 1.1.x版本的 的情景所以,如果我使用的版本,插件以获得最新的依存关系B,我会得到最新的。 (完美)
但是,如果我稍后使用版本1.2.0分支ProjectA并添加我不希望projectB拾取或可能会破坏它的更改。 现在我下次运行projectB并使用版本插件获取最新版本,该插件将获得ProjectA的分支版本(1.2.0),因为它的数值最新。在那里,projectB构建失败。
我到目前为止尝试在工件中添加一个分类器来区分两者,但后来我意识到插件不会对分类器起作用。
这给了我这么多的挫折和欢迎任何提示或建议
嗨,感谢您抽出宝贵时间回复。我已经考虑过在不同的groupId下发布分支,但是因为这会使它成为一个不同的工件,我的团队领导不喜欢这个。其他解决方案? 谢谢 – Tekdev 2013-03-18 16:41:14