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>中管理,则子类不会自动成父类的依赖

     


  • 相关阅读:
    pyecharts 0.5.11介绍
    Python并发写入一个文件
    subprocess模块详解(二)
    subprocess模块详解(一)
    大数据环境下的数据仓库建设
    Java计算字符串相似度
    Pandas matplotlib无法显示中文解决办法
    Hadoop YARN参数介绍(四)[推荐]
    Hadoop YARN参数介绍(三)
    wsl2 ubuntu20.04 上使用 kubeadm 创建一个单主集群
  • 原文地址:https://www.cnblogs.com/gossip/p/5574034.html
Copyright © 2011-2022 走看看