pom.xml中相关标签说明:
1、groupId 定义当前Maven项目隶属项目
2、artifactId 定义实际项目中的一个模块
3、version 定义当前项目的版本号
maven snapshot和release版本区别:
snapshot 快照仓库,用于存放开发过程中不稳定版本,在不更改版本号的情况下,直接编译打包时,maven会自动从镜像服务器上下载最新的快照版本
release 正式仓库,存放稳定版本,在不更改版本号的情况下,编译打包时如果本地已经存在该版本的模块则不会主动去镜像服务器上下载
4、packing 定义该项目的打包方式
5、scope 依赖范围,包括如下:
compile: 默认编译依赖范围。对于编译,测试,运行三种classpath都有效
test:测试依赖范围。只对于测试classpath有效
provided:已提供依赖范围。对于编译,测试的classpath都有效,但对于运行无效。因为由容器已经提供,例如servlet-api
runtime:运行时提供。例如:jdbc驱动
6、依赖声明:
junit
junit
4.10
test
7、exclusions 排除依赖,排除依赖包中所包含的依赖关系,不需要添加版本,直接类别清除
所包含的坐标
8、parent 声明父工程:
parent使用方法如下:
…
…
…
../父工程项目名
relativePath是可选的,maven会首先搜索这个地址,再搜索本地远程repositories
注意:如果工程为父工程,则必须在packing赋值为pom
9、dependencyManagement 父工程统一管理子工程依赖版本,集中管理
子工程仅仅添加依赖包,无需添加版本,版本由父工程继承而来
10、properties 为进一步便于管理,将所有的版本管理设置在一起,设置为系统属性值
4.9
……
注意:引用时使用${junit.version},只能在依赖范围设置
11、modules 一次构建多个项目模块(快速构建项目)
../子项目名称1
../子项目名称2
../子项目名称3
12、build 用于管理插件目标
directory:指定build target目标的目录,默认为$(basedir}/target,即项目根目录下的target
finalName:指定去掉后缀的工程名字,例如:默认为${artifactId}-${version}
filters:用于定义指定filter属性的位置
resources:描述工程中资源的位置
targetPath:指定build资源到哪个目录,默认是base directory
filtering:指定是否将filter文件的变量值在这个resource文件有效
13、plugin
extensions:true或false, 是否要加载这个plugin的extensions,默认为true
inherited:是否让子pom继承,默认为true
configuration:通常用于私有不开源的plugin,不能够详细了解plugin的内部工作原理,但使plugin满足的properties
executions:设定plugin的目标,plugin有很多个目标,每个目标具有不同的配置
phase:声明goals执行的时期
inherited:是否传递execution到子pom里
configuration:设置execution下列表的goals的设置,而不是plugin所有的goals的设置
14、distributionManagement 用于配置分发管理,配置相应的产品发布信息,主要用于发布,在执行mvn deploy后表示要发布的位置
15、snapshotRespository
id
name
16、snapshots
enabled
updatePolicy
checksumPolicy
阅读(1081) | 评论(0) | 转发(1) |