【问题标题】:Maven: How is a phase mapped to a lifecycleMaven:阶段如何映射到生命周期
【发布时间】:2021-07-02 19:54:20
【问题描述】:

我想知道 Maven 如何将阶段映射到生命周期。

例如运行时

mvn clean

然后 Maven 执行“清理”生命周期的“预清理”和“清理”阶段。

但是 Maven 如何确定阶段“clean”(作为命令行参数提供)属于“clean”生命周期?可能还有另一个生命周期也有一个“干净”阶段。

所有生命周期中的所有阶段都必须有一个唯一的名称,这可能是一个规则。但我不知道。

【问题讨论】:

标签: maven


【解决方案1】:

在 Maven 中只存在以下三个生命周期

  1. clean
  2. default
  3. site

细节定义在Maven核心的生命周期绑定https://maven.apache.org/ref/3.8.1/maven-core/lifecycles.html

现有和已定义的生命周期在以下文件中定义:

META-INF/plexus/components.xml

【讨论】:

  • 我的问题不是关于生命周期,而是关于阶段名称。如果一个特定的阶段名称,例如“干净”,可能由多个生命周期定义。如果某些规则禁止这样做,我会是一个快乐的露营者:)
  • 链接是从 Maven 核心生成的。这意味着如果你改变它,Maven 本身的构建就会失败。是的,它将不再是唯一的,这将使得有必要以某种方式在命令行上提供补充信息......这将是 Maven 中真正的重大变化......
  • 这回答了我的问题。谢谢。
猜你喜欢
  • 1970-01-01
  • 2015-07-15
  • 1970-01-01
  • 2013-05-05
  • 2016-08-05
  • 2021-01-25
  • 1970-01-01
  • 1970-01-01
  • 2015-11-20
相关资源
最近更新 更多