一、假设目前有三个maven项目,分别是project.A、project.B、project.C
要求B依赖A、C依赖B但不依赖C

1、B添加对A的依赖

1
2
3
4
5
<dependency>
            <groupId>com.project</groupId>
            <artifactId>project.A</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>

A必须先安装到本地库,否则编译B时会抛异常

A: clean install   B:clean compile

2、C添加对B的依赖,同时排除对A的依赖

1
2
3
4
5
6
7
8
9
10
11
<dependency>
            <groupId>com.project</groupId>
            <artifactId>project.B</artifactId>
            <version>0.0.1-SNAPSHOT</version>
            <exclusions>
              <exclusion>
                    <groupId>com.project</groupId>
                    <artifactId>project.A</artifactId>
              </exclusion>
            </exclusions>
        </dependency>
二、假设目前有四个maven项目,分别是project.parent、project.A、project.B、project.C

要求A、B、C整合到一个项目,并且从project.parent继承依赖

1、parent聚合A、B、C三个项目

1
<packaging>pom</packaging>
1
2
3
4
5
<modules>
<module>../project.A</module>
<module>../project.B</module>
<module>../project.C</module>
</modules>

执行clean compile 进行验证,会同时编译A、B、C三个项目

2、A、B、C分别关联parent项目

1
2
3
4
5
<parent>
        <groupId>com.project</groupId>
        <artifactId>project.parent</artifactId>
        <version>0.0.1-SNAPSHOT</version>
    </parent>

会自动继承父类的依赖jar

如果把父类依赖放在<dependencyManagement>中管理,则子类不会自动成父类的依赖

 


maven_项目的依赖、聚合、继承的更多相关文章

  1. 【maven】依赖、继承、聚合

    依赖: <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId&g ...

  2. (二)Maven 基本概念——依赖、生命周期、仓库管理、聚合&继承

    1. 依赖配置 1.1 依赖配置主要包含如下元素: <!--添加依赖配置--> <dependencies> <!--项目要使用到junit的jar包,所以在这里添加ju ...

  3. (二)maven依赖,两个项目之间如何依赖,继承实现

    maven的jar之间存在依赖关系的,我们在引入一个时,其他有依赖关系的也会被引入 依赖排除: 比如现在有两个依赖关系,A(x,java,y.java,z.java)  B(a,java,b,java ...

  4. maven命令/依赖/聚合

    一,编写pom.xml   首先我们看一下pom.xml   <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns ...

  5. 查看maven项目的依赖关系 mvn dependency:tree

    maven-dependency-plugin最大的用途是帮助分析项目依赖,dependency:list能够列出项目最终解析到的依赖列表,dependency:tree能进一步的描绘项目依赖树,de ...

  6. eclipse导入maven项目后依赖jar包更新问题->update project按钮

    eclipse导入maven项目后依赖jar包更新问题 1.eclipse有专门的导入maven项目按钮,file-import-maven project,eclipse会自动查找指定路径下的pom ...

  7. maven项目导出依赖的Jar包以及项目本身以jar包形式导出详细教程

    一.maven项目已jar包形式导出 1.首先右键项目,选择Export 2.选择好项目,设置导出路径和jar名字即可: 二.导出maven项目所依赖的所有jar包 1.右键项目,选择Export 2 ...

  8. Android studio 项目(Project)依赖(非Module)

    Android studio 项目(Project)依赖(非Module) 0. 前言 对于Module 级别的依赖大家都知道,今天说下Android Studio下的项目依赖. 场景: A Proj ...

  9. 使用pip命令自动生成项目安装依赖清单

    Python项目中经常会带requirements.txt文件,里面是项目所依赖的包的列表,也就是依赖关系清单,这个清单也可以使用pip命令自动生成. pip命令: 1 pip freeze > ...

随机推荐

  1. java操作excel文件

    采用POI操作excel API:http://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFCell.html poi包:http ...

  2. 记忆化搜索 codevs 2241 排序二叉树

    codevs 2241 排序二叉树 ★   输入文件:bstree.in   输出文件:bstree.out   简单对比时间限制:1 s   内存限制:128 MB [问题描述] 一个边长为n的正三 ...

  3. 分享一个Fluent风格的邮件发送封装类

    C#中用SmtpClient发邮件很简单,闲着无事,简单封装一下 IEmailFactory public interface IEmailFactory { IEmailFactory SetHos ...

  4. [Hadoop]如何安装Hadoop

    Hadoop是一个分布式系统基础架构,他使得用户可以在不了解分布式底层细节的情况下,开发分布式程序. Hadoop的重要核心:HDFS和MapReduce.HDFS负责储存,MapReduce负责计算 ...

  5. iOS学习资料

    1. UI整理 http://www.cocoachina.com/ios/20151110/14067.html. 2. iOS学习路径 http://www.cocoachina.com/ios/ ...

  6. 用于json的 .ashx 小细节

    public void ProcessRequest(HttpContext context) { switch (action) { case "attribute_field_valid ...

  7. linux下清除Squid缓存的方法记录

    在日常运维工作中,只要用到squid缓存服务,就会常常被要求清理squid缓存.比如公司领导要求删一篇新闻,新闻是生成的静态.运维人员把服务器上静态的新闻页面删除了后,不料代理服务器上缓存还有.缓存服 ...

  8. 理解SQL Server中的权限体系(上)----主体

    原文:http://www.cnblogs.com/CareySon/archive/2012/04/10/mssql-security-principal.html 简介 权限两个字,一个权力,一个 ...

  9. WMI入门

    转:http://www.cnblogs.com/ceachy/archive/2013/03/21/WMI_What.html WMI入门(一):什么是WMI WMI出现至今已经二十多年了,但很多人 ...

  10. 支持MVC的代码生成运行效果 C# ASP.NET

    做技术的,你若还不懂MVC的话,你好像是外星球来的一样,或者还生活在远古社会里一样,这几天正好没什么事情干,可以静心学习学习MVC技术,顺便把原先的代码生成器修改了一下,只要数据库里设计好了数据结构, ...