maven中pom.xml檔案的使用
阿新 • • 發佈:2019-02-10
初次進入職場,遇到maven這個專案管理工具,對這個工具的使用不是太清楚,先對pom.xml檔案的配置熟悉一下來達到使用的目的吧,
POM (Project Object Model)
一個專案所有的配置都放置在 POM 檔案中:定義專案的型別、名字,管理依賴關係,定製外掛的行為等等。比如說,你可以配置 compiler 外掛讓它使用 java 1.5 來編譯。
現在看一下第一篇文章中示例的 POM
Xml 程式碼
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.helloworld</groupId>
<artifactId>helloworld</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>helloworld</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
在 POM 中,groupId, artifactId, packaging, version 叫作 maven 座標,它能唯一的確定一個專案。有了 maven 座標,我們就可以用它來指定我們的專案所依賴的其他專案,外掛,或者父專案。一般 maven 座標寫成如下的格式:
groupId:artifactId:packaging:version
像我們的例子就會寫成:
com.mycompany.helloworld: helloworld: jar: 1.0-SNAPSHOT
我們的 helloworld 示例很簡單,但是大專案一般會分成幾個子專案。在這種情況下,每個子專案就會有自己的 POM 檔案,然後它們會有一個共同的父專案。這樣只要構建父專案就能夠構建所有的子專案了。子專案的 POM 會繼承父專案的 POM。另外,所有的 POM都繼承了一個 Super-POM。Super-POM 設定了一些預設值,比如在第一篇文章中提到的預設的目錄結構,預設的外掛等等,它遵循了慣例優於配置的原則。所以儘管我們的這個 POM 很簡單,但是這只是你看得見的一部分。執行時候的 POM 要複雜的多。 如果你想看到執行時候的 POM 的全部內容的話,可以執行下面的命令:
$mvn help:effective-pom
也就是說我們可以使用maven的pom.xml檔案將需要的jar包,以及其他的關聯專案的jar包引入