据我所知,在maven中,插件目标可以附加到生命周期阶段。 如果没有定义,默认阶段是什么?
答案 0 :(得分:5)
根据我的经验,它取决于插件目标。例如,maven-assembly-plugin中的assembly:single目标未列出默认阶段。 source:jar-no-fork目标默认绑定到package
阶段。通常,每个目标都会在文档的属性部分列出默认阶段。
另一种说法是查看源代码(例如:source:jar-no-fork mojo)。在类标题注释块中查找@phase
。
最后但并非最不重要:您选择的包装(jar,war,ear,pom等)默认情况下会将目标绑定到生命周期阶段。 Maven书籍描述了lifecycles and bound goals。 maven-core
工件包含配置文件:/src/main/resources/META-INF/plexus/artifact-handlers.xml
。
答案 1 :(得分:3)
如果我正确阅读http://maven.apache.org/guides/mini/guide-configuring-plugins.html,则没有默认值。如果您没有定义默认阶段或配置非默认阶段,那么目标将不会被执行。
答案 2 :(得分:2)
目标的默认阶段取决于您使用的插件。例如,appassembler-maven-plugin绑定到包阶段。但是还有其他插件没有绑定到任何阶段。在这些情况下,您必须自己定义阶段。