<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <!--指定了当前pom的版本,4.0.0是固定的 --> <modelVersion>4.0.0</modelVersion> <!-- 主项目标识,用来定义当前maven属于哪个实际的项目 --> <groupId>反写的公司网址 + 项目名</groupId> <!-- 模块名,maven项目和实际的项目不是一一对应的关系,maven项目提现的是模块化的概念,一个实际项目往往会被划分为很多个模块 --> <artifactId>项目名 + 模块名</artifactId> <!-- 当前项目版本号,一般有三个数字组成 第一个数字:大版本号 第二个数字:分支版本号 第三个数字:先版本号 snapshot: 快照 alpha: 内测版本 beta: 公测版本 Release: 稳定版本 GA: 正式发布版本 --> <version>0.0.1snapshot</version> <!-- maven项目打包方式,默认情况为jar,还可打包为war,zip,pom等 --> <packaging></packaging> <!-- 项目描述名 --> <name></name> <!-- 项目地址 --> <url></url> <!-- 项目描述 --> <description></description> <!-- 开发人员列表 --> <developers></developers> <!-- 许可证信息 --> <licenses></licenses> <!-- 组织信息 --> <organization></organization> <!-- 依赖列表 --> <dependencies> <!-- 依赖项目 --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <type></type> <!-- 依赖范围,控制依赖与三种依赖范围的关系 --> <!-- 开发中要使用某一个jar,就要将该jar包引入到项目的classpath中 --> <!-- maven提供了三种classpath: 1.编译 2.测试 3.运行 --> <!-- 下面的test表明junit只存在于测试的classpath中 --> <!-- maven为scope提供了六个属性: compile(默认,编译测试运行都有效), provided(编译和测试)servlet, runtime(测试和运行)jdbc, test(测试)junit, system(编译和测试,与本机系统相关联,可移植性差), import(导入的范围,只使用在dependencyManagerment中,表示从其他的pom中导入dependency的配置) --> <scope>test</scope> <!-- 设置依赖是否可选 --> <!-- 有两个值,true和false,默认是false,继承,若为true,子项目必须显式的引用该依赖 --> <optional></optional> <!-- 排除依赖传递的列表 --> <exclusions> <exclusion> </exclusion> </exclusions> </dependency> </dependencies> <!-- 依赖管理 --> <dependencyManagement> <!-- 这里定义的依赖不会被运行,即不会被引用为实际的依赖,主要是供子模块集成用 --> <dependencies> <dependency></dependency> </dependencies> </dependencyManagement> <!-- 为构建行为提供相应的支持 --> <build> <!-- 插件列表 --> <plugins> <!-- 插件 --> <plugin> <groupId></groupId> <artifactId></artifactId> <version></version> </plugin> </plugins> </build> <!-- 用于子模块中对于父模块的继承 --> <parent></parent> <!-- 聚合运行多个maven项目 --> <modules> <module></module> </modules> </project>