Maven 聚合

在开发2个以上模块的时候,每个模块都是一个 Maven Project。比如搜索平台,学习平台,考试平台。

开发的时候可以自己管自己独立编译,测试,运行。但如果想要将他们整合起来,我们就需要一个聚合工程。

(1) 父模块的创建

父模块一般承担聚合模块和统一管理依赖的作用,没有实际代码和资源文件.

父模块就是创建一个普通的 Maven Project , 此处省略.

但是需要注意的是: 父模块的打包方式必须是 pom.

(2) 子模块的创建

① 子模块需要创建为 Maven Module 项目.

② 选择该子模块所属的父模块

③ 打包方式 : web 项目需要打 war 包,其他的比如 dao 层, service 层, entity 层都可以打 jar 包.

(3) 项目结构

完成后的项目结构如下:

(4) 父模块的 pom 文件

指明它的子模块都有哪些.

(5) 子模块的 pom 文件

指明它的父模块是谁.

(6) 聚合工程的依赖传递

一般都是在父模块的 pom 中定义项目用到的依赖以及版本,

然后在子模块的 pom 中, 需要什么依赖就直接引入, 不引入版本号, 依赖会自动从父模块中传递到子模块中.

① 父模块中定义依赖

② 子模块中使用依赖

子模块中使用的话, 不需要定义版本号.

(7) 聚合工程的安装.

聚合工程不需要每个模块分别安装, 只要对父工程安装即可.

① 在 打包方式为 pom 的模块中, 添加插件.

② 在父模块上, 右键 -> Run As -> Maven install.

③ 执行结果 : 父工程和子模块都Build成功了。

(8) 多模块的 WEB 项目运行.

在 打包方式为 pom 的模块上, 右键

maven聚合工程打包_史诗级!有手就会的Maven教程(八)相关推荐

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  8. 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 ...

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

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

最新文章

  1. $(window).load(function() {})和$(document).ready(function(){})的区别
  2. GIT使用总结(二)
  3. python下载代码-Python3----下载小说代码
  4. Windows下Android平台搭建_1
  5. 解决2次查询User的问题(ThreadLocal)
  6. React学习:双向数据绑定、约束性和非约束性组件-学习笔记
  7. [渝粤题库]陕西师范大学《幼儿园社会教育》作业
  8. 算法47----大数
  9. 《中学生可以这样学Python》84节配套微课免费观看地址
  10. 电力设计手册_电气设计负荷计算方法
  11. python推荐系统设置_用Python构建你自己的推荐系统
  12. 自制公众平台Web Api(微信)
  13. ubuntu新建一个账户并将其加入sudo用户组
  14. bug篇——mysql中sum函数
  15. golang区块链开发的视频教程推荐
  16. 紫外线杀菌器:紫外线杀菌的原理分析
  17. vue播放视频使用原生video标签基本功能(不含样式)
  18. 给datatable添加序号列
  19. java 基础 笔试题_非常全面的java基础笔试题
  20. webm怎么改成mp4格式

热门文章

  1. 最好用16进制工具wxHexEditor
  2. ffmpeg (四):ffmpeg, ffplay, ffprobe用法
  3. 这世上最快的捷径就是脚踏实地
  4. ANDROID 高性能图形处理 之 OPENGL ES
  5. android之camera2预览
  6. php简单选择题,念做个简易php选择题答题系统
  7. linux shell 脚本实现:根据文件内容中的每行分隔符放入数组,根据规则打印日志并重新创建目录 备份文件
  8. python如何下载os库_简谈下载安装Python第三方库的三种方法
  9. 2021湖南高考成绩分段查询,2021年湖南高考成绩排名查询系统,湖南高考位次排名表...
  10. 2021安徽高考成绩及录取结婚查询,2020安徽高考录取结果查询时间及通知书发放时间...