博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(五)Maven中的聚合和继承
阅读量:6721 次
发布时间:2019-06-25

本文共 1964 字,大约阅读时间需要 6 分钟。

一、为什么要聚合?

 

  • 定义:我们在开发过程中,创建了2个以上的模块,每个模块都是一个独立的maven project,在开始的时候我们可以独立的编译和运行每个模块,但是随着项目的不断变大和复杂化,我们期望能够使用简单的操作来完成编译等工作,这时Maven给出了聚合的配置方式。所谓聚合,顾名思义,就是把多个模块或项目聚合到一起,我们可以建立一个专门负责聚合工作的Maven project ---  aggregator。
  • 注意:
    •     aggregator本身也做为一个Maven项目,它必须有自己的POM它的打包方式必须为: pom
    •      它的打包方式必须为: pom
    •     引入了新的元素:modules---module,每个module的值都是一个当前POM的相对目录
    •     聚合模块的内容仅仅是一个pom.xml文件,它不包含src/main/、src/test/java等目录,因为它只是用来帮助其它模块构建的工具,本身并没有实质的内容。

 

  • 案例:

结果:

 

 

 二、继承

  • 为什么要继承?

    •   我们在项目开发的过程中,可能多个模块独立开发,但是多个模块可能依赖相同的元素,比如说每个模块都需要Junit,使用的时候,其核心jar也必须都被引入,在编译的时候,maven-compiler-plugin插件也要被引入。继承是解决包冲突的解决方法之一。

 

  •  如何配置:

    •   <packaging>: 作为父模块的POM,其打包类型也必须为POM
    •    结构:父模块只是为了帮助我们消除重复,所以它也不需要src/main/java、src/test/java等目录
    •        新的元素:<parent> , 它是被用在子模块中的
    •    子模块省略groupId和version: 使用了继承的子模块中可以不声明groupId和version, 子模块将隐式的继承父模块的这两个元素

     

  • 案例:

  • maven_parent/pom.xml:

 

4.0.0
com.shyroke
maven_parent
0.0.1-SNAPSHOT
pom
maven_parent
http://maven.apache.org
UTF-8
junit
junit
4.12
  • maven05/pom.xml:

 

4.0.0
com.shyroke
maven_parent
0.0.1-SNAPSHOT
maven05
2.0.1-SNAPSHOT
jar
maven05
http://maven.apache.org
UTF-8
junit
junit
test

结果:

 

转载于:https://www.cnblogs.com/shyroke/p/7324312.html

你可能感兴趣的文章
【转】sql server 重命名表字段
查看>>
sql server 2008学习之存储过程
查看>>
Linux 硬盘分区、格式化、自动挂载配置
查看>>
Linux下mysql的安装与mysql一机多实例
查看>>
could not open virtual machine
查看>>
wordpress 3.8.1更改上传附件或图片大小限制
查看>>
IIS FTP 出现 530 User cannot log in, home Directory Inaccessible 错误
查看>>
DM6467T开发板领航——串口烧写程序
查看>>
微软谷歌推自有平板 挑战苹果难度大
查看>>
PHP中SQL注入与跨站***的防范
查看>>
Java中的异常处理
查看>>
egret--列表组件(list)
查看>>
mysql总结8----游标的学习
查看>>
java操作cookie的学习
查看>>
用sql语句对access数据库进行多条件查询
查看>>
Eclipse常用设置及快捷键
查看>>
DotNetTextBox V3.0 所见即所得编辑器控件Ver3.3.2 Free(免费版)
查看>>
php操作ini配置文件
查看>>
虚函数的应用以及实现机制
查看>>
我的友情链接
查看>>