Maven精选系列--POM文件解析
之前有介绍到maven的标准目录结构,也看到了maven的核心配置文件pom.xml文件,今天就解析这个配置文件。
maven工程的核心文件就是这个pom文件了,每个工程在创建的时候都会有一个pom.xml配置文件,这个文件就是maven配置依赖、插件,管理项目及构建的入口,所有的配置都会在这个文件里面,所以搞懂这个文件的基本配置是非常必要的。
如下图,列表了POM文件一系列配置项。
下面这些配置是POM文件基本不可缺少的配置项。
下在讲讲最基本用到的配置项吧。
modelVersion
maven的模型版本,跟随maven定义,一般不能修改。
groupId
项目的组织,一般是顶级域名名称+公司或者组织名称,如alibaba的项目组织为com.alibaba,如果你们公司的域名为www.abc.com,那你们的项目组织最好就以com.abc命名。
artifactId
项目的名称,也是项目之间引进依赖的重要标识。像alibaba有个dubbo项目,dubbo项目可能又关联了许多子项目,所以artifactId就会定义有dubbo、dubbo-config这样的工程。
version
项目的版本,项目迭代开发,可能经历许多个版本,靠这个定义,默认是打包的组成部分,如dubbo-2.8.4.jar。另外,版本有两个概念,0.0.1-SNAPSHOT这样的是快照版本,0.0.1-RELEASE或者不带SNAPSHOT的就是RELEASE版本。
packaging
打包类型,有这几种类型:pom, jar, maven-plugin, ejb, war, ear, rar, par,默认不填就是jar包,一般常用的是pom、jar、war。
properties
配置公共属性,如spring-web,spring-aop你要依赖这两个,它们肯定是同一个版本的如4.5.0,可以把版本号放在属性上统一管理,也方便维护。
介绍了最基本的配置项,其他配置后续会一一分解。想了解更加详细的配置说明可以翻阅官方的文档:http://maven.apache.org/pom.html