一、Maven聚合工程概念

Maven聚合工程:就是可以在一个Maven父工程中创建多个组件(模块-项目),这个多个组件之间可以相互依赖,实现组件的复用

二、创建Maven聚合工程

2.1、创建Maven父工程

Maven聚合工程的父工程 packging必须为 pom

  • 创建一个Maven工程
  • 修改父工程的pom.xml,设置打包方式为pom
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.qfedu</groupId><artifactId>maven-parent</artifactId><version>1.0.0</version><packaging>pom</packaging>
</project>
  • 父工程用于管理子工程,不进行业务实现,因此src目录可以选择性删除

2.2、创建Module

  • 选择父工程—右键—New—Module
  • 输入子工程名称(g和v都从父工程继承)
  • 子工程的pom文件:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><!--module的pom继承 父工程的pom--><parent><artifactId>maven-parent</artifactId><groupId>com.qfedu</groupId><version>1.0.0</version></parent><modelVersion>4.0.0</modelVersion><artifactId>common</artifactId></project>
  • 父工程的pom文件:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.qfedu</groupId><artifactId>maven-parent</artifactId><version>1.0.0</version><!--  声明当前父工程的子module  --><modules><module>common</module></modules><packaging>pom</packaging></project>

三、Maven聚合工程依赖继承

3.1、依赖继承

在父工程的pom文件添加的依赖,会被子工程继承

3.2、依赖版本管理

在父工程的pom.xml的dependencyManagement中添加依赖,表示定义子工程中此依赖的默认版本(此定义并不会让子工程中添加当前依赖)

<!--  依赖管理:在dependencyManagement中添加依赖,表示定义子工程中此依赖的默认版本  -->
<dependencyManagement><dependencies><dependency><groupId>com.google.code.gson</groupId><artifactId>gson</artifactId><version>2.6.1</version></dependency></dependencies>
</dependencyManagement>

【maven】聚合工程相关推荐

  1. sonarqube中,分析maven聚合工程时,不必分析parent工程,只需分析下面的module子工程即可

    sonarqube中,分析maven聚合工程时,不必分析parent工程,只需分析下面的module子工程即可 cd ../../xxx-sms # mvn clean org.jacoco:jaco ...

  2. 解决导入的maven聚合工程中子模块项目不显示

    导入的maven聚合工程中没有子模块,最主要的原因是没有选择正确的导入方式.应该选择maven projects来导入.

  3. maven 聚合工程 用spring boot 搭建 spring cloud 微服务 模块式开发项目

    项目的简单介绍: 项目采用maven聚合工程 用spring boot 搭建 spring cloud的微服务 模块式开发 项目的截图: 搭建开始: 能上图 我少打字 1.首先搭建maven的聚合工程 ...

  4. Maven聚合工程怎么变回普通的Maven工程

    问题 Maven聚合工程的父工程的packaging是pom,如果我们将其改为jar,会立刻报错: Project build error: 'packaging' with value 'jar' ...

  5. maven聚合工程里子工程导入依赖出现unknown错误

    错误截图: 错误分析: 在创建maven聚合工程时,在父工程里进行了版本统一管理 但是子工程里导入依赖发现版本号显示为unknown! 百度很多说没写,考虑到只是部分依赖出现这种情况,排除了这一可能 ...

  6. maven聚合工程打包_史诗级!有手就会的Maven教程(八)

    Maven 聚合 在开发2个以上模块的时候,每个模块都是一个 Maven Project.比如搜索平台,学习平台,考试平台. 开发的时候可以自己管自己独立编译,测试,运行.但如果想要将他们整合起来,我 ...

  7. Spring Boot Maven聚合工程 打包部署教程

    Spring Boot 给聚合工程 打包部署,这里打jar包进行部署,首先等保证父子工程能正常运行,依赖都能加载,不会造成maven之间循环依赖等问题,如图 从上面的图来看,就会发生循环依赖的问题,这 ...

  8. Maven 聚合工程 Could not find artifact 父模块找不到异常

    说明 我们在利用Maven建立一个多模块的聚合工程时,可能会遇到这样的问题,那就是Could not find artifact xxx,并且不能找到的artifact 正是父工程 项目结构 此图是我 ...

  9. maven聚合工程报错:Could not find artifact com.*.*:*-*-*goods:pom:1.0.0-SNAPSHOT in dev

    新建立了一个三级聚合工程,由于依赖关系,对项目install和deploy,项目一直报错: Could not find artifact com.*.*:*-*-*goods:pom:1.0.0-S ...

  10. Jenkins构建Maven聚合工程,指定构建子模块

    一.设置单独编译构建子模块 配置: 1.Root POM指向父pom.xml 2.Goals and options指定构建模块的参数: mvn -pl project1/project1-son - ...

最新文章

  1. DL之GCN:GCN算法的简介(论文介绍)、架构详解、案例应用等配图集合之详细攻略
  2. Makefile(二)
  3. apache ab 测试 apr_socket_connect(): 由于目标机器积极拒绝 无法连接
  4. Vb.net/VB 声明API功能父窗口功能
  5. Qt学习笔记常用容器
  6. 如何创建和自定义SQL Server模板
  7. STM32 PWM呼吸灯程序
  8. 成为JavaGC专家Part II — 如何监控Java垃圾回收机制
  9. python中os关于目录创建和文件移动操作
  10. pigeon-remoting模块功能分析
  11. 成为excel高手必须掌握的54个函数
  12. c语言-链表-贪吃蛇
  13. 《MLB美职棒大联盟》:MLB最佳阵容·MLB新年也要身体倍棒
  14. 你必须收藏的快速学习Autodesk最新编程接口的免费录像
  15. Windows命令行学习笔记
  16. 100个python算法超详细讲解:搬山游戏
  17. 经典sql题目,给每个部门中工资最低的员工涨薪1000
  18. python学习:break用法详解
  19. 清醒认识数据第一步,把关数据质量
  20. 中鑫优配:黄金高位震荡等破位,原油顺势做空看跌!

热门文章

  1. Swift - EasingAnimation绘制圆环动画
  2. Resource is out of sync with the file system
  3. 孙鑫VC学习笔记:第十五讲 (四) 编写一个基于MFC对话框的聊天程序
  4. 深圳信息职业技术学校 计算机辅助设计和制造,大学生职业生涯规划书样稿.doc...
  5. 拓端tecdat|matlab使用分位数随机森林(QRF)回归树检测异常值
  6. 拓端tecdat|R语言中的广义线性模型(GLM)和广义相加模型(GAM):多元(平滑)回归分析保险资金投资组合信用风险敞口
  7. 数控车椭圆编程实例带图_邹军:数控车床任意位置椭圆宏程序的编程
  8. vs2019添加opencv目录和dlib目录
  9. Java中ArrayList和LinkedList以及queue的模仿
  10. java中aop和aoc的区别_你喝到的波尔多AOC、AOP红酒是真的吗?