Maven工程的POM继承

Posted 春华秋实

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Maven工程的POM继承相关的知识,希望对你有一定的参考价值。

父POM的作用是消除配置的重复。
父POM必须<packaging>pom</packaging>
还有

<modules>
    <module>子模块1</module>    
    <module>子模块2</module>  
<modules>

来指定这些子模块可以一起构建。
一起构建是指,构建父模块的同时把子模块也构建了。

子POM通过

<parent>
    <groupId>com.juvenxu.mvnbook.account</groupId>  
    <artifactId>account-parent</artifactId>  
    <version>1.0.0-SNAPSHOT</version>  
    <relativePath>../account-parent/pom.xml</relativePath>  
</parent> 

找到父POM文件,来继承父POM文件的属性。

// 重要属性
properties:自定义的Maven属性
dependencies:项目的依赖配置
dependencyManagement:项目的依赖管理配置
repositories:项目的仓库配置
build:包括项目的源码目录配置、输出目录配置、插件配置、插件管理配置等

// 次重要属性
roupId:项目组ID,项目坐标的核心元素
version:项目版本,项目坐标的核心因素
description:项目的描述信息
organization:项目的组织信息
inceptionYear:项目的创始年份
url:项目的URL地址
developers:项目的开发者信息
contributors:项目的贡献者信息
distributionManagement:项目的部署配置
issueManagement:项目的缺陷跟踪系统信息
ciManagement:项目的持续集成系统信息
scm:项目的版本控制信息
malilingLists:项目的邮件列表信息
reporting:包括项目的报告输出目录配置、报告插件配置等

其中,子POM无条件继承父POM的dependencies元素。
子POM的dependencies元素可以有选择的继承父POM的dependencyManagement元素。

类似,子POM无条件继承父POM的plugins元素。
子POM的plugins元素可以有选择的继承父POM的pluginManagement元素。

参考:http://www.cnblogs.com/maxiaofang/p/5944362.html

以上是关于Maven工程的POM继承的主要内容,如果未能解决你的问题,请参考以下文章

Maven工程的POM继承

maven继承父工程统一版本号

Maven基础2

Maven聚合模块与继承和Maven的生命周期

maven的依赖和聚合

maven继承与聚合