【问题标题】:Build multiple Maven projects构建多个 Maven 项目
【发布时间】:2011-03-23 13:46:30
【问题描述】:

我是 Maven 新手,对构建多个 Maven 项目有疑问。

我们有两个 Maven 项目,项目 A 和项目 B。

项目 A 依赖于项目 B 生成的工件。

当对项目 A 或 B 的更改签入 SVN 时,我们的本地 Hudson 服务器会构建修改后的项目(以及任何依赖项目)并将工件上传到我们的本地 Nexus 存储库中。

现在,考虑两个开发人员。

开发人员 1 仅破解项目 A,当开发人员 1 在本地构建项目 A 时,Maven 会从我们的 Nexus 服务器获取最新的项目 B 快照工件。

Developer 2 同时对项目 A 和项目 B 进行了 hack。当开发人员 2 在本地构建项目 A 时,我们希望 Maven 使用任何本地更改构建项目 B,并使用生成的工件来构建项目 A。我们如何设置 Maven 以使用项目 B 的本地版本进行构建,而不是从关系?这是 Maven 的标准使用模式吗?

【问题讨论】:

    标签: maven-2


    【解决方案1】:

    我们如何设置 Maven 以使用项目 B 的本地版本进行构建,而不是从 Nexus 获取人工制品?

    您可以为每个repository 的快照工件设置updatePolicy。实际上,默认,Maven 每天只检查一次 SNAPSHOT 更新。因此,如果您在本地构建 B 版本,您应该能够在一段时间内使用它来构建 A,即使您的 Nexus 部署了新的 SNAPSHOT。如果这不符合您的需要,您可以更改此政策。您也可以离线构建(使用-o 选项)。

    PS:AFAIK,在 Maven 3.x 中默认禁用自动更新,您必须明确要求更新(使用 -U 选项)。

    【讨论】:

      猜你喜欢
      • 2014-07-05
      • 2012-05-26
      • 2014-05-22
      • 1970-01-01
      • 1970-01-01
      • 2012-01-19
      • 2011-05-11
      • 2020-10-10
      • 2019-08-18
      相关资源
      最近更新 更多