1. 依赖关系

  1.1 标签<dependency>把另一个项目的jar引入到当前项目

  1.2 自动下载另一个项目所依赖的其他项目

2. 继承关系.

  2.1 父项目是pom类型

  2.2 子项目jar或war,如果子项目还是其他项目的父项目,子项目也是pom类型.

  2.3 有继承关系后,子项目中出现<parent>标签

    2.3.1 如果子项目的<groupId>和<version>与父项目项目,在子项目中可以不配置<groupId>和<version>

  2.4 父项目pom.xml中是看不到有哪些子项目.在逻辑上具有父子项目关系.

   <parent>

  <groupId>com.bjsxt</groupId>

   <artifactId>parent</artifactId>

   <version>0.0.1-SNAPSHOT</version>

  </parent>

3. 聚合关系.

  3.1 前提是继承关系.父项目会把子项目包含到父项目中.

  3.2 子项目的类型必须是Maven Module而不是maven project

  3.3 新建聚合项目的子项目时,点击父项目右键新建Maven Module

  3.4 具有聚合关系的父项目,在pom.xml中<modules>

  <modules>

  <module>child2</module>

  </modules>

  3.5 具有聚合关系的子项目,在pom.xml中<parent>

  <parent>

  <groupId>com.bjsxt</groupId>

  <artifactId>parent</artifactId>

  <version>0.0.1-SNAPSHOT</version>

   </parent>

4. 聚合项目和继承项目区别

  4.1 在语意上聚合项目父项目和子项目关系性较强

  4.2 在语意上单纯继承项目父项目和子项目关系性较弱

5. <dependencyManagement> 写在父项目

  5.1 作用:声明可能使用到的所有jar

  5.2 子项目中只需要有坐标的<groupid>和<artifactid>,<version>继承父项目

  5.3 在父项目中<properties>把所有版本好进行统一管理

  5.4 父项目pom.xml

    5.4.1 <properties>子标签名称自定义

    5.4.2 ${名字} 引用标签的值

<properties>

<spring-version>4.1.6.RELEASE</spring-version>

</properties>

<dependencyManagement>

<dependencies>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-webmvc</artifactId>

<version>${spring-version}</version>

</dependency>

</dependencies>

</dependencyManagement>

5.5 子项目

<dependencies>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-webmvc</artifactId>

</dependency>

</dependencies>

Maven项目之间的关系的更多相关文章

  1. Maven项目之间关系介绍

    Maven项目之间的关系 依赖关系 单纯的项目A中需要项目B中的资源,将项目B打成Jar包被A依赖,此时项目A直接调用项目B中资源即可. 项目A和项目B此时形成最基本的依赖关系. 继承关系 需要场景: ...

  2. Maven学习:项目之间的关系

    Maven不仅可以定义一个项目中各个模块之间的关系,还可以更延伸一步定义项目与项目之间的关系. 定义父子项目的好处还是挺多的.

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

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

  4. maven项目pom继承关系

    <dependency>部分下添加<exclusions>标记 Dependencies:是可选依赖(Optional Dependencies) Exclusions:是依赖 ...

  5. Maven项目关系

    Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),其中最重要的就是POM文件,可以指定项目类型,项目关系等信息,maven项目之间有三种关系. 依赖 ...

  6. 手动创建Maven项目并建立两个项目之间的依赖关系

    用命令行快速建立maven项目 -> mvn:archetype:generate -> 直接回车或者自己输入你想生成的 -> groupId ->artifactId -&g ...

  7. Maven学习 五 Maven项目创建(1)jar项目

    第一步:Maven项目的创建 File->new->Maven project. 点击下一步 上方的两个多选框选上,第一个是不使用archetype 原型模板,第二个是使用默认工作空间 点 ...

  8. 适AT maven多个子项目、父项目之间的引用问题

    适AT   maven多个子项目.父项目之间的引用问题 在项目时用到maven管理项目,在一个就项目的基础上开发新的项目:关于子项目和父项目,子项目与子项目之间的调用问题,发现自己存在不足,以下是自己 ...

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

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

随机推荐

  1. bzoj2555 substring(LCT 后缀自动机)

    /* 动态求right集合的大小 LCT维护parent树即可 注意 由于树是有向的不会换根并且每次操作单一, 于是不需要维护子树和(写起来很麻烦) 直接打标记修改即可 */ #include< ...

  2. linux:ubuntu安装mysql(一)

    1.下载MySQL安装包(MySQL Community Server) 地址:https://dev.mysql.com/downloads/mysql/ 2.解压 tar -xvf mysql-s ...

  3. Ubuntu下安装virtualbox: RTR3InitEx failed with rc=-1912 (rc=-1912)

    下载好合适的安装包: http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html 然后进行安装,配 ...

  4. ES6学习笔记<二>arrow functions 箭头函数、template string、destructuring

    接着上一篇的说. arrow functions 箭头函数 => 更便捷的函数声明 document.getElementById("click_1").onclick = ...

  5. 硬盘读取不了-->>完美解决

    说明:电脑装了两个硬盘,一个固态一个机械,装完系统之后读取不到机械硬盘的数据,网上很多人都说格式化之后分盘,但是!!!里面的数据咋办?千万别自己倒腾转换格式什么的,一不小心数据真的丢了,那就再也找不回 ...

  6. LInux下的jdk环境置

    1.Linux下使用wget下载jdk8: 进入目录/usr/local/software 2.解压 tar -zxvf  jdk-8u152-linux-x64.tar.gz 3.配置环境变量 vi ...

  7. datetime模块的简单用法

    import datetime print(datetime.datetime.today()) #2018-08-14 14:18:28.575412 print(datetime.date.tod ...

  8. 在虚拟机中安装ubuntu

    初始安装: 1.安装新虚拟机时,选择稍后安装操作系统,这可以自己设置语言等信息 2.修改自定义硬件:为网卡生成一个mac地址,(这里需要注意,有时网卡会冲突,导致连接时好时坏,以后可以删除掉网卡,重新 ...

  9. jQuery 移除事件与模拟事件

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...

  10. 2. oracle创建表空间、用户并设置默认表空间、授权

    1.创建用户并设置默认表空间 create tablespace tablespacename datafile 'tablespacename.dbf' size 200m autoextend o ...