一、假设目前有三个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. cri-o 创建非infra容器

    1.// cri-o/server/container.go // CreateContainer creates a new container in specified PodSandbox fu ...

  2. HDU 3081 最大流+并查集

    题意:有n个男生和n个女生,玩结婚游戏,由女生选择男生:女生可以选择不会和她吵架的男生以及不会和她闺蜜吵架的男生,闺蜜的闺蜜也是闺蜜.问你最多可以进行多少轮,每一轮每个女生只能选择一个之前她没选过的男 ...

  3. IT技术博客收藏

    1. coolshell.cn 特点: 每篇都是精品 2. 云风 特点: 3. 阮一峰的博客 特点:高精深 3. offbye涛声依旧-全端技术博客 特点: android的开发技术比较多,非常值得一 ...

  4. 关于tcpdump抓包一个很详细的介绍

    http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html

  5. Block 的基本用法

    iOS中Block的基础用法 转载自简书 本文简介 本章不会对Block做过多的实现研究.只是讲解基本的用法.纯粹基础知识.结合实际项目怎么去做举例.Block使用场景,可以在两个界面的传值,也可以对 ...

  6. Linq中查询List组合相同值数量大于1

     List< select g.Key).ToList();

  7. javascript获取当前的时间戳

    JavaScript 获取当前时间戳:第一种方法: var timestamp = Date.parse(new Date()); 结果:1280977330000第二种方法: var timesta ...

  8. sql点滴46—Can't connect to MySQL server (10060)

    如下图所示,链接远程的数据库提示Can't connect to MySQL server (10060). 遇到这个问题,我们首先做一个分析,导致这种状况出现的几种原因: a.bind-addres ...

  9. 关闭linux centos各种声音

    shell报警 #vi /etc/inputrc ================================ set bell-style none 或 echo "set bell- ...

  10. U3D prefab

    1,prefab相当于一个类,字面意思就是预设,预先设计好的类.把一个prefab拖放到场景中就生成了一个实例,把二个prefab放到场景中就生成了两个实例. 不同的实例独立动作,拥有自己独立的状态与 ...