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

 


时间: 2024-12-09 04:34:53

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

Maven学习总结(五)——聚合与继承【如果想一次构建多个项目模块,那我们就需要对多个项目模块进行聚合】

一.聚合 如果我们想一次构建多个项目模块,那我们就需要对多个项目模块进行聚合 1.1.聚合配置代码 1 <modules> 2 <module>模块一</module> 3 <module>模块二</module> 4 <module>模块三</module> 5 </modules> 例如:对项目的Hello.HelloFriend.MakeFriends这三个模块进行聚合 1 <modules>

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

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

Maven的使用《二》之依赖、继承、聚合

问题?Maven的使用<二>之依赖.继承.聚合 前面已经讲到了环境的搭建(环境搭建链接),这里就不重复了.下面的主要是对依赖.继承.聚合详细说明. 这里用的编译软件是eclipse,要装maven的插件(下载地址和安装方法:点击下载链接). 然后装完后,这个时候插件已经在Preference里面了,但是插件还不能用,需要我们做一些设置. 一般来说,做到这里就可以用了.但是我在用的过程中会出现这样的一种错误(点击查看链接),经过查询资料,已经得到了很好的解决办法.做下面设置(把jir改成jdk格

【maven】依赖、继承、聚合

依赖: <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.0</version> <scope>test</scope> </dependency>1.依赖的范围(依赖的有效性) compile(默认值) test 比如:Junit provided 比如:servlet-api

Android - Gradle项目构建依赖

Gradle项目构建依赖 本文地址:http://blog.csdn.net/caroline_wendy Android使用Gradle构建时,由于模块之间的依赖关系,和Gradle升级的兼容性,会导致异常,常见的问题: (1) Error: No such property: target for class: com.android.build.gradle.LibraryExtension_Decorated. 删除target = 'android-20',最新版本的Gradle已经不

Eclipse 下载 开源项目 maven依赖丢失和 Deployment Assembly 丢失

周末下载了最新的jeecg的源码来瞅瞅,但是下载后发现,pom文件中定义的依赖都丢失了. 如下图 上网搜索了一下啊,发现需要先给这个项目这个项目 disable maven nature 然后再添加上再给这个项目添加maven支持. 如下图: 然后再查看项目的依赖,如下图 但是发现不能部署tomcat,仔细一看少了 Deployment Assembly 在网上又是一通搜索,发现需要修改 project Facets 的 动态 web module 后来在网上搜索,说可以直接改配置文件,就能出现

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

Python项目中经常会带requirements.txt文件,里面是项目所依赖的包的列表,也就是依赖关系清单,这个清单也可以使用pip命令自动生成. pip命令: 1 pip freeze > requirements.txt 这样就自动生成requirements.txt了.如果需要生成在虚拟环境下的依赖关系,需要先进入虚拟环境. 在很多Python项目中都包含一个requirements.pip文件,里面写的是一些包的名称和版本之类的信息,这是做什么用的呢? 比如一个requirement

unity团队如何解决项目资源依赖缺失问题和资源命名规范化

我要说的前提是unity团队的项目管理是使用git.对svn我没有试过! 因为我是要使用 钩子解决项目资源依赖缺失问题和资源命名规范化. 使用钩子对任何一个人上传的内容进行检查.如果不合法就不让上传! 钩子的编写可以使用 shell或者python 或者shell调用python 而我的实现是shell调用python脚本(具体不做介绍) 我做了如下的要求: Git钩子检查规则 v1.0.0  撰写人:孙广东 注: Git 上传的操作有三种:添加A.删除D.修改M. 本程序执行的功能:检查上传的

第十二周项目3-摩托车继承自行车和电动车

#include <iostream> #include<conio.h> #include <windows.h> using namespace std; enum vehicleStaus {rest, running}; //车辆状态:泊车.行进 class vehicle //车辆类,虚基类 { protected: int maxSpeed; //最大车速 int currentSpeed; //当前速度 int weight; //车重 vehicleSt