Maven生命周期

Maven生命周期

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),阶段是有顺序的,后面的阶段依赖于前面的阶段。

maven-lifecircle

生命周期

Clean

  • pre-clean
  • clean
  • post-clean

Default

  • validate
  • initialize
  • generate-sources
  • process-sources
  • generate-resources
  • process-resources
  • compile
  • process-classes
  • generate-test-sources
  • process-test-sources
  • generate-test-resources
  • process-test-resources
  • test-compile
  • process-test-classes
  • test
  • prepare-package
  • package
  • pre-integration-test
  • integration-test
  • post-integration-test
  • verify
  • install
  • deploy

Site

  • pre-site
  • site
  • post-site
  • site-deploy

命令行和生命周期

各个生命周期相互独立,一个生命周期的阶段先后依赖。如:设计模式

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以及以前全部阶段测试

相关文章
相关标签/搜索