天天看點

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