maven实战第七章整理

来源:互联网 发布:开软件外包项目 编辑:程序博客网 时间:2024/06/07 10:33
maven生命周期:
概念:maven生命周期是对所有构建过程进行的抽象和统一。包含:清理,初始化,编译,测试,打包,集成测试,验证,部署和站点生成等构建步骤。
maven生命周期是抽象的,意味着生命周期本身不能做任何实际工作。

maven生命周期抽象了构建的各个步骤,定义了他们的次序,但是没有提供具体的实现,具体的任务交由插件完成,插件以独立的构建形式存在。
clean,site,default
clean生命周期目的是清理项目,default生命周期目的是构建项目;site生命周期是建立项目站点
clean生命周期:1)pre-clean 执行一些清理前需要完成的工作;2)clean 清理上一次构建生成的文件; 3) post-clean 执行一些清理后需要完成的工作
default生命周期:
1) validate ;2) initialize 3)generate-sources 4)process-sources 5) generate-resources 6)process-resources 7)compile
8) process-classes 9)generate-test-sources 10)..太多了,因为没有见识过各个生命周期的阶段,不抄了
site生命周期: 1)pre-site 执行一些在生成项目站点之前需要完成的工作; 2)site生成项目站点 3) post-site 执行一些在生成项目站点之后需要完成的工作
4)site-depoly 将生成的项目站点发布到服务器上

maven插件:
插件目标:对于插件本身,为了能够重复使用代码,往往能够完成多个任务。而插件目标指的是插件能够完成的功能。
通用写法:dependency:list ,冒号前是插件前缀,冒号后面是插件目标

maven插件与生命周期的绑定:
     1.maven生命周期与插件绑定,用以完成实际的构建任务。
     2.maven可以通过phase元素配置生命周期阶段,使得插件目标能够绑定到生命周期中。maven很多插件目标在编写时已经定义了默认绑定阶段。

maven插件配置:
1.命令行配置插件:
     maven-surefire-plugin 提供了一个maven.test.skip,当其值为true的时候,会跳过执行测试。在运行命令时,前面加上-D
     示例命令: $mvn install -Dmaven.test.skip=true
2.在pom配置全局插件:
3.pom中插件任务配置:用户为某个插件任务配置特定的参数

maven获取插件信息:
1.在线插件信息:Apache和Codehaus
2.使用maven-help-plugin描述插件

maven插件解析机制:
1.插件仓库:远程仓库使用pluginRepositories和pluginRepository配置
2.默认的groupId:org.apache.maven.plugins
3.解析插件版本:maven遍历本地仓库和所有的远程插件仓库,将该路径下的仓库元数据归并后,计算出latest和release值。
latest表示仓库中该构件的最新版本;release表示最新值的非快照版本
4.解析插件前缀:前缀通过<prefix>元素定义。
maven可以设置<pluginGroups>元素,定义<pluginGroup>让maven检查其他groupId上的仓库元数据。默认检查org.apache.maven.plugins和org.codehaus.mojo两个groupId
0 0
原创粉丝点击