【问题标题】:How to update to latest snapshots in Hudson如何更新到 Hudson 中的最新快照
【发布时间】:2011-12-08 03:08:38
【问题描述】:

我有一个包含大约 20 个 Maven 库的项目。直到最近,我们一直只开发 SNAPSHOTS。但是,现在我们开始着手制作版本。我们使用 Hudson 进行持续集成,并将我们项目的所有主干版本作为工作。我正在使用 Maven 发布插件来发布项目。

由于 Maven 发布插件推进了主干文件的版本,您通常如何保持所有 Hudson 作业都指向最新的 SNAPSHOTS?

【问题讨论】:

    标签: java maven hudson


    【解决方案1】:

    它应该指向项目目录,因此会自动拾取它。换句话说,它查看 pom.xml 并从中获取信息。因此,在发布之后,您将使用新快照,并且下一个 Hudson 构建也将如此。在 pom 更改后,Hudson 将永远不会构建版本或旧版本。

    您是否有某种设置,其中项目目录/名称包含实际版本?这看起来很奇怪。

    【讨论】:

    • 对不起,我的意思是哈德逊的其他项目如何指向新的 SNAPSHOT 版本的库。这是一个手动过程还是可以自动化,即无论其 Maven SNAPSHOT 版本如何,您的 Hudson 作业始终是针对主干版本构建的。
    • 我想我很困惑。如果这是您的工作所针对的地方,我看不出它不会始终针对主干版本进行构建。或者您是否希望其他项目在不更改 pom 的情况下指向新快照?您是否希望 pom 依赖项以某种方式更新到新版本?
    • 是的。如果我有 2 个项目 A 和 B,其中项目 A 0.1.0-SNAPSHOT 取决于项目 B 0.1.0-SNAPSHOT。如果 B 从 0.1.0-SNAPSHOT 更新到 0.2.0-SNAPSHOT,那么项目 A(我假设)将继续依赖项目 B 0.1.0-SNAPSHOT。此时项目 A 不再与项目 B 持续集成。大概我需要更新项目 A pom - 如果项目数量众多,这将成为相当大的维护开销。
    • 好吧,它不会指向旧的快照,它会指向发布,因为你不能发布具有快照依赖性的东西。据我所知,你想做的事情是不可能的(其他人可能会在这里插话)。
    • 顺便说一句,如果您将大部分/所有内容都保留在同一个版本上,这是在父 pom 或类似的东西中使用版本属性的一个很好的理由,那么您将拥有一个或只有一个更新版本的地方很少。
    猜你喜欢
    • 2013-07-29
    • 2010-11-12
    • 2011-01-10
    • 2017-05-01
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多