Maven定义了三套生命周期:clean、default、site,每一个生命周期都包含了一些阶段(phase)。
三套生命周期相互独立,但各个生命周期中的phase倒是有顺序的,且后面的phase依赖于前面的phase。
执行某个phase时,其前面的phase会依顺序执行,但不会触发另外两套生命周期中的任何phase。
以下图:maven
----------------------------------------------------------------------------------------测试
-------------------------------------------------------------------------------------------------ui
运行任何一个生命周期阶段的时候,它前面的全部生命周期阶段都会被运行,这也就是为何咱们运行mvn install 的时候,代码会被编译,测试,打包。插件
插件是maven的核心,全部执行操做都是基于maven操做,为了使一个插件中能够实现更多相似的功能,一个插件中
有可能有多个目标。生命周期的每一个阶段都是相应的插件和目标来执行,以下图:
插件经过build标签配置,经过配置execution和goal指定执行目标,经过phase制定插件绑定的阶段
例如:blog
maven默认插件,所以不须要显示配置就能够执行maven生命周期的各个阶段:生命周期