【maven】聚合工程
一、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】聚合工程相关推荐
- sonarqube中,分析maven聚合工程时,不必分析parent工程,只需分析下面的module子工程即可
sonarqube中,分析maven聚合工程时,不必分析parent工程,只需分析下面的module子工程即可 cd ../../xxx-sms # mvn clean org.jacoco:jaco ...
- 解决导入的maven聚合工程中子模块项目不显示
导入的maven聚合工程中没有子模块,最主要的原因是没有选择正确的导入方式.应该选择maven projects来导入.
- maven 聚合工程 用spring boot 搭建 spring cloud 微服务 模块式开发项目
项目的简单介绍: 项目采用maven聚合工程 用spring boot 搭建 spring cloud的微服务 模块式开发 项目的截图: 搭建开始: 能上图 我少打字 1.首先搭建maven的聚合工程 ...
- Maven聚合工程怎么变回普通的Maven工程
问题 Maven聚合工程的父工程的packaging是pom,如果我们将其改为jar,会立刻报错: Project build error: 'packaging' with value 'jar' ...
- maven聚合工程里子工程导入依赖出现unknown错误
错误截图: 错误分析: 在创建maven聚合工程时,在父工程里进行了版本统一管理 但是子工程里导入依赖发现版本号显示为unknown! 百度很多说没写,考虑到只是部分依赖出现这种情况,排除了这一可能 ...
- maven聚合工程打包_史诗级!有手就会的Maven教程(八)
Maven 聚合 在开发2个以上模块的时候,每个模块都是一个 Maven Project.比如搜索平台,学习平台,考试平台. 开发的时候可以自己管自己独立编译,测试,运行.但如果想要将他们整合起来,我 ...
- Spring Boot Maven聚合工程 打包部署教程
Spring Boot 给聚合工程 打包部署,这里打jar包进行部署,首先等保证父子工程能正常运行,依赖都能加载,不会造成maven之间循环依赖等问题,如图 从上面的图来看,就会发生循环依赖的问题,这 ...
- Maven 聚合工程 Could not find artifact 父模块找不到异常
说明 我们在利用Maven建立一个多模块的聚合工程时,可能会遇到这样的问题,那就是Could not find artifact xxx,并且不能找到的artifact 正是父工程 项目结构 此图是我 ...
- 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 ...
- Jenkins构建Maven聚合工程,指定构建子模块
一.设置单独编译构建子模块 配置: 1.Root POM指向父pom.xml 2.Goals and options指定构建模块的参数: mvn -pl project1/project1-son - ...
最新文章
- DL之GCN:GCN算法的简介(论文介绍)、架构详解、案例应用等配图集合之详细攻略
- Makefile(二)
- apache ab 测试 apr_socket_connect(): 由于目标机器积极拒绝 无法连接
- Vb.net/VB 声明API功能父窗口功能
- Qt学习笔记常用容器
- 如何创建和自定义SQL Server模板
- STM32 PWM呼吸灯程序
- 成为JavaGC专家Part II — 如何监控Java垃圾回收机制
- python中os关于目录创建和文件移动操作
- pigeon-remoting模块功能分析
- 成为excel高手必须掌握的54个函数
- c语言-链表-贪吃蛇
- 《MLB美职棒大联盟》:MLB最佳阵容·MLB新年也要身体倍棒
- 你必须收藏的快速学习Autodesk最新编程接口的免费录像
- Windows命令行学习笔记
- 100个python算法超详细讲解:搬山游戏
- 经典sql题目,给每个部门中工资最低的员工涨薪1000
- python学习:break用法详解
- 清醒认识数据第一步,把关数据质量
- 中鑫优配:黄金高位震荡等破位,原油顺势做空看跌!
热门文章
- Swift - EasingAnimation绘制圆环动画
- Resource is out of sync with the file system
- 孙鑫VC学习笔记:第十五讲 (四) 编写一个基于MFC对话框的聊天程序
- 深圳信息职业技术学校 计算机辅助设计和制造,大学生职业生涯规划书样稿.doc...
- 拓端tecdat|matlab使用分位数随机森林(QRF)回归树检测异常值
- 拓端tecdat|R语言中的广义线性模型(GLM)和广义相加模型(GAM):多元(平滑)回归分析保险资金投资组合信用风险敞口
- 数控车椭圆编程实例带图_邹军:数控车床任意位置椭圆宏程序的编程
- vs2019添加opencv目录和dlib目录
- Java中ArrayList和LinkedList以及queue的模仿
- java中aop和aoc的区别_你喝到的波尔多AOC、AOP红酒是真的吗?