我已经配置了一个 Jenkins 作业来构建一个 Maven 3 项目并启用了“Maven 发布构建”插件,还添加了一个构建后操作来将工件部署到 Nexus 存储库。
但是,除非用户通过单击“Perform Maven Release”链接而不是“立即构建”按钮来启动构建,否则我不希望部署工件。当单击“立即构建”时,我只想要一个不会在任何地方部署的快照构建。
我从文档中了解到,我可以使用一个名为 IS_M2RELEASEBUILD 的环境变量来控制这种行为。当通过“执行 Maven 发布”链接启动构建时,M2 发布插件将此环境变量设置为 true。但是后期构建操作完全忽略了这一点。
我正在使用 Jenkins LTS 1.509.3 和 Maven 3.0.5。
更新:请注意,我不是在寻找在 POM 中使用 Maven 发布插件的解决方法。我的目标是创建一个单一的 Jenkins 作业,充当由签入触发的 CI 构建(不部署快照),并能够使用相同的作业使用 Jenkins M2 发布插件执行发布构建。