食用前须知

本文以a b c 三个模块为例来搭建项目,以达到通俗易懂的初衷

模块a —– 基模块,就是人们常说的parent

模块b —– 其他模块都需要使用的一些工具,比如时间工具,json工具等

模块c —– 项目主要的内容,一般为聚合工程

先简单讲一下maven的一些特点

1. 继承

这个可以理解为java中的继承类似,父类定义的东西,子类如果你想用就拿过来用就可以;

2. 依赖

依赖就相当于我们java中的导包,二者有着异曲同工之妙;

你想用的东西只需要告诉maven它在哪就可以,它会自动帮你找过来给你用

3. 聚合

这个暂时我还没找到java中能与之对应的原型;

maven聚合是将多个模块组装在一起,相互协调依赖运行;

创建步骤

1.创建一个空项目



maven引入redission maven引入其他模块_idea导入多模块maven项目

file - new - project 一个空的项目



maven引入redission maven引入其他模块_maven项目_02

填写项目名称



maven引入redission maven引入其他模块_maven多模块_03

选择要打开项目的方式



maven引入redission maven引入其他模块_maven引入redission_04

2.创建第一个模块a



maven引入redission maven引入其他模块_maven_05

新建一个模块



maven引入redission maven引入其他模块_maven项目_06

选择创建一个maven模块



maven引入redission maven引入其他模块_maven_07

填写模块基本信息



maven引入redission maven引入其他模块_maven引入redission_08

解决创建速度慢



maven引入redission maven引入其他模块_maven多模块_09

设置一个属性 archetypeCatalog ,具体原因感兴趣的自行了了了姐吧

finish完成模块创建



maven引入redission maven引入其他模块_maven引入redission_10

maven引入redission maven引入其他模块_idea导入多模块maven项目_11

3.创建第二个模块



maven引入redission maven引入其他模块_maven_12

选择继承的父工程



maven引入redission maven引入其他模块_maven多模块_13

填好路径finish完成b模块创建



maven引入redission maven引入其他模块_maven项目_14

同 b 完成 c 模块创建



maven引入redission maven引入其他模块_maven_15

4.创建聚合工程 c



maven引入redission maven引入其他模块_maven多模块_16

在 c 模块下新建一个maven工程模块 c1



maven引入redission maven引入其他模块_maven引入redission_17

继承 c 模块



maven引入redission maven引入其他模块_idea导入多模块maven项目_18

配置 c1 工程路径



maven引入redission maven引入其他模块_maven多模块_19

同 c1 完成 c2 工程模块创建

c2 模块 依赖 c1 模块



maven引入redission maven引入其他模块_maven多模块_20

c 工程模块 依赖 b 工程模块



maven引入redission maven引入其他模块_maven多模块_21

最后再说两句

这种项目结构主要应用在大型项目中,多人协作开发,小型项目 或 人员配置不足情况下不建议使用; 之前因为一直没有机会参与大型项目开发,或是这种分布式项目的搭建,网上也没有这方面系统全面的说明 ,可能真正用到这种架构的不需要自己动手去弄,等着别人搭好进去码代码就可以了.所以本人也是抱着学习的 ,态度发布这篇文章,希望能够帮助一些不清楚的同学一起学习,一起进步.