我正在基于JAR包的生命周期创建一个自定义Maven包。我想知道这个生命周期是在哪里定义的(即components.xml
源代码的位置)。
您的问题有一个小误解。"jar"
包装没有特殊的生命周期。它基于默认的生命周期。
来自生命周期参考:
Maven在
META-INF/plexus/components.xml
:中定义了3个生命周期
default
生命周期clean
生命周期site
生命周期
您可以在Maven 3.3.9的源代码中找到这个components.xml
文件。default
生命周期没有定义任何绑定,因为它们依赖于包装:
default
生命周期是在没有任何相关插件的情况下定义的。此生命周期的插件绑定是为每个包单独定义的。
每个标准包(如"jar"
)都定义了绑定到此默认生命周期的特定阶段的插件。您可以在文件default-bindings.xml
中找到这些绑定。
拥有这两个独立文件的目的是区分生命周期和打包,前者定义了插件包含的阶段,后者定义了插件的哪些目标应该绑定到该生命周期的哪些阶段。