2011-11-06 34 views
29

ví dụ .:Thẻ gốc trong Maven pom là gì?

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

Liệu nó có nghĩa rằng Maven sẽ tìm kiếm pom mẹ? Nếu có, ở đâu, theo thứ tự nào? Có thể nằm trong thư mục lên 1 cấp không? Hoặc trong kho lưu trữ cục bộ hoặc trong repo?

Cảm ơn.

Trả lời

24

Có, maven đọc POM mẹ từ kho lưu trữ cục bộ của bạn (hoặc proxy như nexus) và tạo 'POM hiệu quả' bằng cách hợp nhất thông tin từ cha mẹ và mô-đun POM.

Xem thêm Introduction to the POM

Một lý do để sử dụng một mẹ là bạn có một vị trí trung tâm để lưu trữ thông tin về các phiên bản các hiện vật, biên dịch-settings vv nên được sử dụng trong tất cả các mô-đun.

0

Các phụ thuộc phổ biến, Properties, hằng vv có thể được definded trong cha mẹ trung tâm pom.xml dự án

Điều quan trọng chính là dự án cha mẹ có thể không được phân phối và có vẻ tương tự giống như pom.xml bình thường ngoại trừ nó bao bì thẻ

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

Đứa trẻ bây giờ có thể thừa kế này sử dụng

<parent> 
     <groupId>com.company.demo</groupId> 
     <artifactId>MavenInheritance</artifactId> 
     <version>0.0.1-SNAPSHOT</version> 
    </parent> 
Các vấn đề liên quan