首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Jenkins构建号安装/部署Maven

使用Jenkins构建号安装/部署Maven
EN

Stack Overflow用户
提问于 2012-09-17 18:26:59
回答 1查看 8.5K关注 0票数 4

更新#1 9/18

我的公司已经决定完全修改他们的开发/发行周期,以适应越来越多的开发人员。

git过程将与成功分支模型类似,只需做一些更改。开发人员不需要直接推送到“developers”分支,而是需要发出合并/拉请求,需要代码评审和基本单元测试。

版本系统将是Major.Minor.Patch,主要版本标记向后兼容性中断,次要版本标记新特性和小错误修复,修补程序标记关键的热修复。这个新的版本系统将删除Jenkins的版本号作为有用的信息,但为了历史目的将其附加到已部署的工件上。

Jenkins将跟踪“developers”分支,以构建快照并将快照部署到本地Nexus,因此开发人员可以使用未发布但已被接受的特性。Jenkins还将跟踪“主”分支,以构建和部署发布构件。

释放过程将:

  • 根据发布的特性更新POM版本
  • Git用新版本标记分支
  • 执行单元、集成和系统测试。
  • 构建、混淆并将发布工件部署到我们的Nexus
  • 将新开发快照的“开发”分支版本更新为“Major.Minor++-快照”。

原始帖子

我试图构建一个混淆的JAR库,使用基于Jenkins/Hudson构建的动态版本号,并部署到内部Sonatype Nexus。

我的问题是Maven安装/部署不遵守对finalName的更改,使用如下表达式设置版本被认为是“错误的做法”:

代码语言:javascript
复制
    <version>1.0.${buildNumber}</version>

尽管这是一个糟糕的实践,但它正确地安装/部署带有适当版本的工件,包括本地版本和远程版本。版本号基于与Jenkins构建系统的build环境变量的存在相关的一对配置文件,如果没有该变量,默认为0:

代码语言:javascript
复制
    <profile>
        <id>static_build_number</id>
        <activation>
            <property>
                <name>!env.BUILD_NUMBER</name>
            </property>
        </activation>
        <properties>
            <buildNumber>0</buildNumber>
        </properties>
    </profile>
    <profile>
        <id>dynamic_build_number</id>
        <activation>
            <property>
                <name>env.BUILD_NUMBER</name>
            </property>
        </activation>
        <properties>
            <buildNumber>${env.BUILD_NUMBER}</buildNumber>
        </properties>
    </profile>

我们不使用快照版本,因为提交并推送到Nexus的任何版本都被认为是经过测试的版本。

是否有一种基于Jenkins/Hudson动态版本号设置Maven版本的“适当”方法,允许使用该更新版本部署Maven版本?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-17 19:14:53

maven方法指出,只有当您发布代码时,版本才会发生更改,并且同一版本的两个连续构建应该产生相同的输出。

在你的例子中,你违背了这两个好的做法。

如果真正的每个提交都是一个新版本,那么您正在做的事情听起来并不严重错误(但对我来说确实很有趣)。一个缺点是,它看起来不像是从您的VCS中创建一个标记(这是另一个好的实践)。

老实说。我不敢相信每一次提交都是一个生产准备版。我从未见过这种情况,甚至在连续交付环境中,每个提交都需要通过大量的自动化测试,有时修订也会被拒绝(可能是因为功能或性能原因)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12465096

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档