【问题标题】:How to have maven automatically build assembly submodule after new submodules如何在新子模块之后让 Maven 自动构建程序集子模块
【发布时间】:2013-04-21 19:26:19
【问题描述】:

我有一个多模块 maven 项目,它使用程序集插件来创建子模块生成的所有二进制文件的存档。按照in this article 的建议,我将我的程序集描述符放在一个名为分发的新子模块中。该程序集可以正常工作,但必须在所有其他子模块之后构建。

开发人员通常使用 maven-archetype-quickstart 原型创建新的子模块,这会将新的子模块添加到父 POM 中部分的末尾。除非父 POM 中的部分被重新排序,或者新的子模块被添加为分发子模块的依赖项,否则构建将无法正常工作。

有什么方法可以避免每次添加新子模块时都必须执行这些手动步骤之一?

【问题讨论】:

  • 您是否尝试过在后期阶段(例如预集成测试而不是打包)运行程序集插件?
  • 我去尝试过,但没有成功。据我了解,每个子模块在构建下一个模块之前都会经历整个生命周期,因此附加到不同的阶段将无济于事。

标签: maven maven-assembly-plugin


【解决方案1】:

这是否意味着这个distribution 子模块依赖于其他子模块(基本上是所有东西)?如果您在 pom 中将依赖层次结构表述出来,这将导致 distribution 子模块在其所有依赖项之后构建。 WHta 这意味着您可以在 distribution 的 pom 的 dependencies 部分中指定其他模块或子模块。

【讨论】:

  • 我知道如果我让它依赖于其他一切,分发子模块将最后构建。我的问题是是否有任何方法可以避免每次将新子模块添加到项目时都必须编辑分发子模块以添加新依赖项。
  • 嗯,我不知道。但我明白你在说什么,这对维护的角度是有好处的。
猜你喜欢
  • 1970-01-01
  • 2011-07-24
  • 2012-05-30
  • 2022-11-25
  • 1970-01-01
  • 1970-01-01
  • 2015-02-25
  • 1970-01-01
  • 2019-07-11
相关资源
最近更新 更多