【问题标题】:Phase name collisions in custom lifecycles in Maven?Maven中自定义生命周期中的阶段名称冲突?
【发布时间】:2016-09-22 02:48:02
【问题描述】:

AFAIK,您可以在 Maven 中创建自定义构建生命周期。

另外,AFAIK,你不能告诉 maven 执行 生命周期。您可以:

  1. 告诉maven执行一个阶段:在这种情况下,maven找到这个阶段在哪个生命周期中,然后执行那个生命周期中的所有阶段,向上到指定的阶段。

  2. 告诉 maven 执行一个目标,将其指定为 mvn plugin_name:goal_name

所以,假设我创建了一个自定义生命周期。并假设此自定义生命周期有一个名为 install 的阶段。

当我写mvn install时,maven会执行默认生命周期(有一个名为install的阶段)还是我的自定义生命周期(也有一个名为install的阶段)?

maven 将如何确定要遵循的生命周期?

【问题讨论】:

  • 这是一个有趣的问题。请注意,它也与包装密切相关:自定义生命周期通常会通过声明新的特定包装来覆盖默认生命周期。因此mvn install 将调用为该包装配置的生命周期的install 阶段。这仍然留下了更普遍的问题(关于cleansite 生命周期,与包装无关)。也相关:stackoverflow.com/a/11557638/1743880

标签: maven maven-lifecycle


【解决方案1】:

(尚)不支持此功能,不过最近 Stephen 开始了一个关于它的帖子:http://maven.markmail.org/thread/z57dzgunecgfcrf7

【讨论】:

  • 有趣(我担心它不被支持)。是否可以在您的回答中总结电子邮件中所说的内容? (以防链接失效)。
  • 我们发现当前的默认(构建)生命周期经常被滥用为自定义生命周期,并且很难指定您自己的自定义生命周期。这应该以某种方式简化,如果它是一个广泛使用的生命周期,它应该被添加到 Maven 中以成为一个新标准并防止各种不同的生命周期(与 Ant 的目标相比)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-05
  • 2016-08-05
  • 2021-01-25
  • 2020-12-16
  • 1970-01-01
  • 2016-02-18
相关资源
最近更新 更多