A Build Lifecycle is Made Up of Phases.A Build Phase is Made Up of Plugin Goals. 用了好久的maven了,直到最近才发现自已对maven的生命周期都还不了解,之前一直理解错了,一直把default的一些phases当成了maven的生命周期。现记录一下:Maven的生命周期就是对全部的构建过程进行抽象和统一。包含了项目的清理、初始化、编译、测试、打包、集成测试、验证、部署和站点生成等几乎全部的构建步骤。Maven的生命周期是抽象的,即生命周期不作任何实际的工做,实际任务由插件完成,相似于设计模式中的模板方法。 Maven有三套相互独立的生命周期,分别是clean、default和site。每一个生命周期包含一些阶段(phase),阶段是有顺序的,后面的阶段依赖于前面的阶段。
clean
compile
test
package
install
各个生命周期相互独立,一个生命周期的阶段先后依赖。如:设计模式
mvn clean
调用clean生命周期的clean阶段,实际执行pre-clean和clean阶段maven
mvn test
调用default生命周期的test阶段,实际执行test以及以前全部阶段post
mvn clean install
调用clean生命周期的clean阶段和default的install阶段,实际执行pre-clean和clean,install以及以前全部阶段测试