【发布时间】:2013-03-04 20:37:20
【问题描述】:
我正在致力于为大量相互依赖的模块自动发布 maven 的项目。首先,该任务涉及获取内部依赖项的最新版本。而不是以每个项目在需要之前构建的方式对构建进行排序。希望这种组合能让我实现一键批量发布的目标。
但是我最大的问题是: 我们不时分支项目,并从该分支向 Nexus 存储库管理器发布/快照。显然,因为 groupId 和 ArtifactId 与主干相同 - 来自主干的快照/发布和来自分支的快照/发布最终位于 nexus 中的同一位置。
在我们有一个主干版本为 1.1.x 的 projectA 的场景中 和 projectB → projectA 版本 1.1.x 因此,如果我使用 version-plugin 获取 B 的最新依赖项,我将获得最新的。 (完美)
但是,如果我稍后使用 1.2.0 版本对 ProjectA 进行分支并添加我不希望 projectB 获取或可能破坏它的更改。 现在下次我运行 projectB 并使用版本插件获取最新的,插件将获取 ProjectA 的分支版本(1.2.0),因为它在数字上是最新的。就这样,projectB 构建失败了。
到目前为止,我已尝试向工件添加分类器以区分两者,但后来我意识到插件不会对分类器起作用。
这让我非常沮丧,如果有任何提示或建议,我将不胜感激
【问题讨论】:
标签: maven maven-2 maven-3 nexus artifactory