如test-parent是一个聚合工程,打包方式为pom.xml

test-a是test-parent的一个moudle模块,打包方式为jar,并且继承自test-parent;

test-b是test-parent的一个moudle模块,打包方式为jar,并且继承自test-parent;

但是test-c只是test-parent的一个moudle模块,不继承test-parent工程,也许继承其它工程(这个条件无所谓)

则当test-parent中添加了一个依赖的jar包junit,此时只有test-a和test-b中会自动添加该junit依赖jar包,而c中不会出现该junit jar包。

举个例子

比如P有两个儿子A,B,则P是一个聚合工程,A,B都继承自P父工程,但是C是P领养的一个儿子,则C和P之间的关系只是聚合关系,C有没有亲生父亲并不重要,哪怕C是石头里蹦出来的都行。

Maven中聚合与集成的区别的更多相关文章

  1. Maven中dependencies和dependencyManagement的区别

    Maven项目中,为了保持引用依赖的一致性,一般会抽出一个parent层,用来管理子项目的maven依赖,对于依赖的管理有两种方式,分别是dependencies以及dependencyManagem ...

  2. 034 Maven中的dependencyManagement和dependencies区别

    这个标签使用过,但是具体的描述还是没有说明过.在这里,专门查了一下,写了这篇文章. 1.定义 在Maven中dependencyManagement的作用其实相当于一个对所依赖jar包进行版本管理的管 ...

  3. Maven中聚合与继承

    何为继承? --›继承为了消除重复,我们把很多相同的配置提取出来 --›例如:grouptId,version等 就像写java程序一样,对于有共性切重复的东西,就提取出来. 如有三个pom.xml配 ...

  4. UML中聚合和组合的区别

    聚合 聚合其实是关联的一个特例,表示了两个对象之间“part of(部分-整体)”的关系,是一种弱关联,部分的生命周期可以超越整体.在UML中,用整体端有空心菱形箭头的双向关联修饰聚合.聚合的示例如下 ...

  5. Maven中plugins和pluginManagement的区别

    pluginManagement是表示插件声明,即你在项目中的pluginManagement下声明了插件,Maven不会加载该插件,pluginManagement声明可以被继承. pluginMa ...

  6. 漫画:工作这么多年,你居然不知道 Maven 中 Optional 和 Exclusions 的区别?

    欢迎关注笔者的公众号: 小哈学Java, 专注于推送 Java 领域优质干货文章!! Maven 依赖排除(Exclusions) 因为 Maven 构建项目具有依赖可传递的特性,当你在 pom.xm ...

  7. Maven 中 install,package,deploy命令区别

    mvn clean package依次执行了clean.resources.compile.testResources.testCompile.test.jar(打包)等7个命令. mvn clean ...

  8. Maven 的聚合(多模块)和 Parent 继承

    2017年06月26日 21:16:57 Maven 的聚合(多模块)和 Parent 继承 - 偶尔记一下 - CSDN博客 https://blog.csdn.net/isea533/articl ...

  9. maven依赖 dependency中scope=compile 和 provided区别

    问题再现 上次这边朋友问我一个问题,就是他们在pom.xml中的dependency中,看到有一些是provided的情况,比如如下: <dependency> <groupId&g ...

随机推荐

  1. vue 中 相同的路由不会跳转,更改路由的办法

    vue 开发的项目,路由跳转的时候,是相同的路由是不会跳转,页面也不会有更新的 有时候 必须要跳转怎么办, 更改一个参数,num,一直在改变.就可以进入了. this.$router.push({ p ...

  2. 51nod1227 平均最小公倍数

    $Ans(l,r)=ans(r)-ans(l-1)\\ans(n)=\sum\limits_{i=1}^n \sum\limits_{j=1}^i \frac{j}{gcd(i,j)}\\=\sum\ ...

  3. conda,pip 安装指定版本的指定包

    1.conda 安装指定版本的指定包 cuda search tensorflow-gpu 有如下结果: 然后使用conda install package=version 就能安装指定版本的pack ...

  4. 线程相关的sleep()、yield()、wait()、join()方法介绍

    1.Thread.sleep()与Thread.yield()都会暂缓当前线程执行,转为执行其他线程(忽略优先级),如果持有锁,则不会释放. 2.Thread.sleep()可以精确指定休眠的时间,而 ...

  5. WebApi设置HttpContext.Current.User

    1.Web.config配置上system.web节点下加入以下配置 <system.web> <authentication mode="Forms"> ...

  6. 转载:揪出MySQL磁盘消耗迅猛的真凶

    揪出MySQL磁盘消耗迅猛的真凶 背景 Part1:写在最前 当一张单表10亿数据量的表放在你面前,你将面临着什么? Part2:背景介绍 为了提升数据库资源利用率,一个实例中,在不互相影响,保证业务 ...

  7. JAVA之Mybatis基础入门二 -- 新增、更新、删除

    上一节说了Mybatis的框架搭建和简单查询,这次我们来说一说用Mybatis进行基本的增删改操作: 一. 插入一条数据 1.首先编写USER.XML(表的xml)使用insert元素,元素写在map ...

  8. vb程序安装时需要在客户端安装MSSOAP30.dll,但注册不上,请问怎么处理

    現在想打包发布,在客戶沒有這個控件時,注冊一下,主要是不想在客户机器上安装SoapToolkit30.EXE文件 ?? 推荐解决方案 如果使用 InstallShield 工具来打包,安装完MSSOA ...

  9. 【转】Lombok 安装、入门 - 消除冗长的 java 代码

    前言:    逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下.    lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码.特别是相对于 ...

  10. 转:APP开发浅谈-Fiddler抓包详解

    原文地址:http://www.luoxudong.com/?p=306 Fiddler抓包工具在APP开发过程中使用非常频繁,对开发者理解HTTP网络传输原理以及分析定位网络方面的问题非常有帮助.今 ...