Maven学习笔记之maven的生命周期

来源:互联网 发布:windows程序视频 编辑:程序博客网 时间:2024/05/22 03:24

1.  Maven的生命周期 

Maven的生命周期其实是指它对所有的构建过程进行了反复的推敲、反思,之后总结了一套高度抽象过程。这个过程是高度完善的、容易扩展的。基本上包含了项目的清理、初始化、编译、测试、打包、集成测试、验证、部署、、站点生成等步骤,几乎所有的项目生命周期也就这样。Maven项目周期是一个抽象的概念,这个概念性的东西意味着它并不做任何实质性的事情,也就是说:它就像接口,只定义规范,具体细节它不管。具体的实现细节则交给了Maven的各个丰富的插件。Maven的插件机制有可能是跟Eclipse学的,基于一个内核core,定义一堆流程性的东西,让插件去实现这些规范。其他组织也可以根据这套规范插入自己的东西,形成有特色化的、自定制的Maven。 

Maven有三套相互独立的生命周期,分别是:cleandefaultsiteclean主要是清理项目、defaultMaven最核心的的构建项目、site是生成项目站点。每一个大的生命周期又分为很多个阶段。后面的阶段依赖于前面的阶段,这点有点像Ant的构建依赖。生命周期本身相互独立,用户可以仅仅调用生命周期的某一个阶段,也就是说用户调用了default周期的任何阶段,并不会触发clean周期以及site周期的任何事情。 

2.  Maven生命周期阶段详解 

3大生命周期蕴含着小小的阶段,我们按顺序看一下 

clean周期: 

pre-clean:准备清理 

clean:真正的清理工作 

post-clean:执行清理后的一些后续工作 

default周期: 

validate:验证 

initialize:初始化配置 

generate-sources:生成源代码编译目录 

process-sources:处理项目主资源文件,复制资源文件到outputclasspath 

generate-resources:生成资源目录 

process-resources:处理资源文件 

complie:编译源代码 

process-classes:处理编译后文件 

generate-test-sources:生成测试目录 

process-test-sources:处理项目测试资源文件,复制测试资源文件到outputclasspath 

generate-test-resources:生成测试资源文件 

process-test-resources:处理测试资源文件 

test-compile:编译测试代码 

process-test-classes:处理测试代码 

test:单元测试运行测试代码 

prepare-package:打包前的准备 

package:将编译好的代码打包成为jar或者war或者ear等等 

pre-integration-test:准备整体测试 

integration-test:整体测试 

post-integration-test:为整体测试收尾 

verify:验证 

install:安装到本地Maven库 

deploy:将最终包部署到远程Maven仓库 

site周期: 

pre-site:准备生成站点 

site:生成站点及文档 

post-site:站点收尾 

site-deploy:将生成的站点发布到服务器上 

比如说在命令行执行了 

0 0
原创粉丝点击