该文件用于管理:源代码、配置文件、开发者的信息和角色、问题追踪系统、组织信息、项目授权、项目的url、项目的依赖关系等等
<modelVersion>5.0.0</modelVersion> modelVersion:pom文件的模型版本 为5.0.0
<groupId>com.zjf.www</groupId> groupId 组织名称 com.zjf.www 是我创建项目用的文件路径 maven会将该项目打成的jar包放本地路径,即com/zjf/www
<artifactId>maven-webapp</artifactId> artifactId 项目名称 是新建的maven项目名称
<version>0.0.6</version> 表示 jar包的版本
<scope>test</scope> 表明该jar文件的适用的作用范围,只在测试时使用
<packaging>war</packaging> packaging:项目打包的后缀,war是web项目发布用的,默认为jar
<name>maven-webapp Maven Webapp</name>
<url>http://www.example.com</url> name和url:相当于项目描述,可删除
group id + artifact id +version :项目在仓库中的坐标
<scope>值范围
<scope>test</scope> :
compile:默认值,适用于所有阶段(表明该jar包在编译、运行以及测试中路径俊可见),并且会随着项目直接发布。
provided:编译和测试时有效,并且该jar包在运行时由服务器提供。如servlet-api.
runtime:运行时使用,对测试和运行有效。如jdbc.
test:只在测试时使用,在编译和运行时不起作用。发布项目时没有作用。
system:不依赖maven仓库解析,需要提供依赖的显式的置顶jar包路径。对项目的移植来说是不方便的。
<dependencies> 介绍
<dependencies> 是引入jar包的跟目录 所有引进jar都在这个标签里面 增加<dependency>
dependency:引入资源jar包到本地仓库,一对dependency标签就引进一个jar包,可以有多对dependency标签
举例:
<dependencies>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng-test</artifactId>
<version>${testng.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
</dependency>
<dependencies>
这是创建项目时自动生成的,将spring-test-4.3.2.RESEASE
.jar引入到项目中,${spring.version}的值可以在properties中定义,具体见下方描述
<
properties
>介绍
<!-- 为pom定义一些常量,在pom中的其它地方可以直接引用 使用方式 如下 :${file.encoding} -->
<
properties
>
<
file.encoding
>UTF-8</
file.encoding
>
<
testng.version
>6.14.3</
testng.version
> //使用6.14.3版本的testng
<
spring.version
>4.3.2.RESEASE</spring.version> //使用4.3.2.RESEASE版本的spring
</
properties
>