Svn Maven发布过程问题(发布插件的任何替代方案)
在过去的两个月里,我一直在和Maven一起工作。我想我已经足够理解了,但还不确定:)我已经编译、安装了快照构建并部署到了我们的团队存储库中 因此,计划是为开发环境使用快照构建,一旦稳定,就告诉QA团队将快照构建用于QA,一旦QA接受构建,就将相同的构建推广到生产环境 如果发现快照构建良好,我的要求是。我要确切的生产资料。 如果我使用发布插件,issue it会标记并重建源代码,签出标记并部署它(在过程中从版本字符串中删除快照)。这里的问题是,我不能保证它与QA接受的快照构建具有相同的位 另外,我觉得标记构建是多余的,因为Jar清单有SVN修订版。因此,我总是可以回到SVN修订版,从Maven工件Jar追溯构建 所以,我的问题是,有没有一种简单的方法来促进快照构建,而这是QA团队可以接受的Svn Maven发布过程问题(发布插件的任何替代方案),svn,maven,release,Svn,Maven,Release,在过去的两个月里,我一直在和Maven一起工作。我想我已经足够理解了,但还不确定:)我已经编译、安装了快照构建并部署到了我们的团队存储库中 因此,计划是为开发环境使用快照构建,一旦稳定,就告诉QA团队将快照构建用于QA,一旦QA接受构建,就将相同的构建推广到生产环境 如果发现快照构建良好,我的要求是。我要确切的生产资料。 如果我使用发布插件,issue it会标记并重建源代码,签出标记并部署它(在过程中从版本字符串中删除快照)。这里的问题是,我不能保证它与QA接受的快照构建具有相同的位 另外,我
如果使用快照,就不能有“相同的位”。您可以使用完全相同的源构建位。使用版本号插件将源代码管理版本捕获到版本中。当QA喜欢时,标记该版本并生成分支。然后手动将版本号设置为所需的发布版本 或者,停止用砖头砸自己的脚,按照预期使用发布插件 您需要使用发布阶段。运行release插件生成一个真正的版本,带有标签,但工件被囚禁在一个暂存区域(通过Nexus Pro、Archiva的下一个版本或使用altDeploymentUrl)。让QA测试暂存区版本。如果他们愿意的话,就把这些东西推广到正式的发布区域。如果QA将其删除,请删除标签并删除暂存区域
这样,您就可以完成对您所设想的交付的比特的测试。如果使用快照,您就不能拥有“相同的比特”。您可以使用完全相同的源构建位。使用版本号插件将源代码管理版本捕获到版本中。当QA喜欢时,标记该版本并生成分支。然后手动将版本号设置为所需的发布版本 或者,停止用砖头砸自己的脚,按照预期使用发布插件 您需要使用发布阶段。运行release插件生成一个真正的版本,带有标签,但工件被囚禁在一个暂存区域(通过Nexus Pro、Archiva的下一个版本或使用altDeploymentUrl)。让QA测试暂存区版本。如果他们愿意的话,就把这些东西推广到正式的发布区域。如果QA将其删除,请删除标签并删除暂存区域
这样,您就可以完成对您想象中的交付部分的测试。我也在研究这个问题。我是一个铁杆的Maven用户,我仍然用发行版插件(特别是与Mercurial一起使用时)把头撞在墙上 以下是我遇到的一些其他相关链接:
maven发布插件
,但至少它深入了使用它的陷阱
我们正在考虑采用一种更简单的方法,使用我们自己的脚本来管理流程,使用Maven来更新版本号(例如,
mvn版本:set-DnewVersion=1.1.0
),但实现我们自己的分支/标记/提交工作流。我也在研究这个问题。我是一个铁杆的Maven用户,我仍然用发行版插件(特别是与Mercurial一起使用时)把头撞在墙上
以下是我遇到的一些其他相关链接:
maven发布插件
,但至少它深入了使用它的陷阱
我们正在考虑采用一种更简单的方法,使用我们自己的脚本来管理流程,使用Maven来更新版本号(例如,
mvn versions:set-DnewVersion=1.1.0
),但实现我们自己的分支/标记/提交工作流。一种方法是让CI服务器与二进制存储库一起使用。您可以完全跳过maven发布插件
下面是如何使用执行的示例
我确信,如果您使用另一台CI服务器(如Jenkins)并与另一个二进制存储库(如Nexus)一起使用,也有同样的可能性。一种方法是让CI服务器与二进制存储库一起使用。您可以完全跳过
maven发布插件
下面是如何使用执行的示例
我确信,如果您使用另一台CI服务器(如Jenkins)以及另一个二进制存储库(如Nexus),也有同样的可能性。这里有一个精彩的博客,介绍了使用maven发布插件的一个相当简单的替代方案。我们将在我们的项目中使用此策略的调整,它避免了发布插件的许多问题和复杂性
这里有一个精彩的博客,介绍了使用maven发布插件的一个相当简单的替代方案。我们将使用一个改编版本