【问题标题】:Will switching branches while running mvn clean install affect maven?运行 mvn clean install 时切换分支会影响 maven 吗?
【发布时间】:2018-06-12 06:46:54
【问题描述】:

我有一个包含多个模块的 Maven 项目。运行 mvn clean install 需要一个多小时,所以我想切换到不同的分支并在同一个项目中处理一些其他任务。

如果我在分支 A 上运行 mvn clean install 然后切换到分支 B maven 将使用哪个分支?

【问题讨论】:

  • 如果你的 repo 有一个工作树(如果这是 maven 使用的),那么 maven 将使用签出的任何分支。
  • 是的。切换分支可以并且可能会影响 Maven 正在处理的文件。这里更大的问题听起来像你的 Maven 构建需要一个多小时......
  • 什么需要这么长时间?你有多少个模块?你在什么样的机器上运行这个构建?运行测试?是的,有多少?运行它们需要多长时间?除此之外,您应该使用像 Jenkins 这样的 CI 解决方案来运行此类构建..
  • 感谢您的建议,但不幸的是,项目架构超出了我的范围。
  • Maven 不知道 git 在下面,并考虑磁盘上的文件。您可以在其他地方查看另一个副本,然后继续处理

标签: git maven


【解决方案1】:

Maven 将按依赖顺序构建模块,因此如果它尚未构建,例如,当您切换分支时模块 CD,那么它将构建这些模块的“切换”版本而不是版本调用 mvn clean install 时的那些模块。

我怀疑创建一个单独的工作区,将您的存储库克隆到该工作区,然后在构建“其他”工作区的同时在该工作区工作会更安全。

当然,这个……

运行 mvn clean install 需要一个多小时,

...听起来有些警钟,但我假设您已经意识到并(也许)单独解决了这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-23
    • 1970-01-01
    • 1970-01-01
    • 2016-11-11
    • 1970-01-01
    • 2013-11-16
    • 2014-07-04
    • 2023-03-03
    相关资源
    最近更新 更多