1 父模块与子模块
在父模块指定自己的子模块,并且准备一些各个子模块公用的资源,如插件,配置信息等等。
2 构建模块与功能模块
将打包的模块与实现具体功能的模块分开的做法。
通常情况下,父模块和构建模块合并为一个模块。
3 生命周期
生命周期是对maven软件开发过程的阶段的抽象,每个生命周期又分了若干阶段。
maven生命周期分为三套,clean default site。
4 插件和目标
生命周期是不干活的,不干具体实事,是用来约定大家进行项目构建的行为规范。真正干活的是插件。
一个插件其实可以干好几件事情,每件事情又有个名字 叫做目标。所以插件就像我们程序员,要会java开发,还要知道数据库,还要知道操作系统。
一个插件就是一组插件目标的集合。
生命周期,和阶段用来规划项目的进行节奏和步伐,插件和插件目标干活,2方面配合,就会产生产出物,如jar,war。
生命周期和插件的关联要解决几个问题
1 哪个插件要关联
2 哪个插件目标要关联
3 关联到哪个生命周期
4 关联到生命周期的哪个阶段
生命周期和插件的关联在pom文件中有2中关联方式:
1 在build元素里,这里是一段cobertura的配置
org.codehaus.mojo
cobertura-maven-plugin
2.5.1
site
site
cobertura
2 在pluginManage元素里
5 pom.xml文件和properties文件的关联
properties文件是2部分的,key值和value值,value值是可以写引用的 形如 ${xxxx}
${xxx}这些值在编译的时候,或者测试的时候会用pom文件中对应的properties元素的子元素替换。
这个特太好了。
6 build选项
pom文件里是可以有好几个build元素的,build选项着重说明的是,在执行mvn命令的时候指定使用哪个build节点下的配置。
例如,测试的时候要依赖一些东西,生产环境中是不需要的,就可以配置2个build,在测试的时候指定用测试build,生产环境部署的
时候指定生产build打包。
这里的build选项与5配合,就实现了 测试很生产环境 多个生产环境 数据库配置的问题。
这样我们就可以在一个地方看到所有环境的数据库信息,只要在执行mvn命令的时候指定build就可以使用相应的配置信息。
7 属性替换
为了统一管理依赖的版本号,可以在pom文件中的
节点点配置多个元素,名字自定义,
然后在所有使用版本号的地方用表达式$()替换真是的版本号,这样在修改版本号的时候就可以一改全改,省去了查找替换之苦。
示例:
xxx
xxx
${aa.version}
false
3.0.0
阅读(9682) | 评论(0) | 转发(0) |