我一直在寻找一段时间,在使用嵌套的Git子模块时找不到任何有效的解决方案或指南/教程来发布Maven模块.
我们有一个复杂的公共和私人项目结构,需要特定的订单才能成功构建.我们的目标是执行Maven版本,以便在一个步骤中标记和部署多个Maven工件.
这是简化的Maven项目/模块和Git存储库结构:
parent-public:1.0.0:pom (descriptor only, no Maven modules, public Git repository)
| |
| |- public-module:1.0.0-SNAPSHOT:jar
| (Maven module, child of parent-public, Git submodule, public repository)
|
|- parent-private:1.0.0-SNAPSHOT:pom
(Maven modules, Git submodule, private repository)
|
|- public-module:1.0.0-SNAPSHOT:jar
| (Maven module only, child of parent-public, Git submodule, public repository, released)
|
|- private-module:1.0.0-SNAPSHOT:war
(Maven module, child of parent-private, released)
Run Code Online (Sandbox Code Playgroud)
当前结构允许Maven独立构建和部署项目/模块.
释放时public-module(从parent-public/parent-private/public-module目录),maven-release-plugin执行良好(已标记Git存储库并已部署发布工件).
在发布时parent-private,maven-release-plugin准备并开始执行发布,然后在目标结账期间失败(此问题在此处讨论,但解决方案在我的上下文中不起作用且没有足够的声誉来评论).
这是当前的 …