zoukankan      html  css  js  c++  java
  • maven_项目的依赖、聚合、继承

     
    一、假设目前有三个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>中管理,则子类不会自动成父类的依赖

     


  • 相关阅读:
    当开发者产生一个伟大的想法之后应该做的10件事
    PUT 还是 POST ?
    Failed to issue method call: Unit mysqld.service failed to load: No such file or directory.
    使用 Protocol Buffers 代替 JSON 的五个原因
    Java 打印堆栈的几种方法
    Eclipse调试Java的10个技巧
    如何使用命令查看系统名称?
    Feed系统架构资料收集
    dcm4chee 修改默认(0002,0013) ImplementationVersionName
    【原创】分布式之数据库和缓存双写一致性方案解析
  • 原文地址:https://www.cnblogs.com/gossip/p/5574034.html
Copyright © 2011-2022 走看看