2011-11-06 57 views
29

例如: -Maven pom中的父標記代表什麼?

<parent> 
    <groupId>mycompany.trade.com</groupId> 
    <artifactId>mycompany.trade.</artifactId> 
    <version>1.1.1.0-SNAPSHOT</version> 
</parent> 

這是否意味着Maven將搜索父POM? 如果是,在哪裏,以何種順序?可能在文件夾上一級?或者在本地存儲庫或回購?

謝謝。

回答

24

是的,maven從您的本地存儲庫(或代理如nexus)讀取父POM,並通過合併來自父代和模塊POM的信息來創建「有效的POM」。

又見Introduction to the POM

一個原因使用父是你有一個集中的地方來存儲有關的文物,編譯器設置等應在所有模塊中使用的 版本的信息。

0

共同的依賴關係,屬性,常數等可以在中央父項目的pom.xml definded

主要重要的是父項目無法再進行分配,它看起來更象相似,除了它正常的pom.xml包裝標籤

<groupId>com.company.demo</groupId> 
    <artifactId>MavenInheritance</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>pom</packaging> 

現在孩子已經能夠繼承這種使用

<parent> 
     <groupId>com.company.demo</groupId> 
     <artifactId>MavenInheritance</artifactId> 
     <version>0.0.1-SNAPSHOT</version> 
    </parent>