JAR包装Maven生命周期在哪里定义?

时间:2016-05-01 13:07:40

标签: java maven maven-plugin maven-lifecycle

我正在根据JAR包装的生命周期创建自定义Maven包装。我想知道这个生命周期的定义(即components.xml源代码位置)。

1 个答案:

答案 0 :(得分:4)

你的问题中有一点误解。 "jar"包装没有特殊的生命周期。它基于默认生命周期。

来自the lifecycle reference

  

Maven在META-INF/plexus/components.xml中定义了3个生命周期:

     
      
  • default生命周期
  •   
  • clean生命周期
  •   
  • site生命周期
  •   

您可以在源代码here for Maven 3.3.9中找到此components.xml文件。 default生命周期没有定义任何绑定,因为它们依赖于包装:

  

default生命周期定义为,不含任何关联的插件。此生命周期的插件绑定为defined separately for every packaging

每个标准打包(如"jar")定义绑定到此默认生命周期特定阶段的插件。您可以在文件default-bindings.xml中找到这些绑定。

拥有这两个单独文件的目的是区分生命周期和包装,生命周期定义了它包含的阶段,包装定义了插件的哪些目标应该绑定到生命周期的哪些阶段。