Maven的生命周期
Maven的生命周期是对所有构建过程的抽象和统一。它包括几乎所有的构建步骤,如项目清理、初始化、编译、测试、打包、集成测试、验证、部署和站点生成。
Maven的生命周期是抽象的,也就是说,生命周期不做任何实际工作,实际任务由插件完成,类似于设计模式中的模板方法。
三套生命周期Maven有三套独立的生命周期,分别是clean、default和site。每个生命周期都包含一些阶段(phase),这些阶段是有顺序的,后面的阶段依赖于前面的阶段。
1、clean生命周期:对项目进行清理,包含三个phase。
(1)pre-clean:执行清理前需要做的工作
(2)clean:清理上次构建生成的文件
(3)post-clean:执行清理后需要做的工作
2、default生命周期:建立项目,重要阶段如下。
(1)validate:验证工程是否正确,所有需要的资源是否可用。
(2)compile:编译项目的源代码。
(3)test:使用合适的单元测试框架来测试已编译的源代码。这些测试不需要已打包和布署。
(4)Package:把已编译的代码打包成可发布的格式,比如jar。
(5)integration-test:如有需要,将包处理和发布到一个能够进行集成测试的环境。
(6)verify:运行所有检查,验证包是否有效且达到质量标准。
(7)install:把包安装到maven本地仓库,可以被其他工程作为依赖来使用。
(8)Deploy:在集成或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。
3、site生命周期:创建和发布项目站点,阶段划分如下
(1)pre-site:生成项目站点前要做的工作
(2)site:生成项目网站的文档
(3)post-site:生成项目站点后要做的工作
(4)site-deploy:将项目站点发布到服务器上