Maven 多模块项目的创建与配置

本文介绍了如何创建和配置Maven多模块项目,包括父模块和子模块的创建,详细讲解了父模块POM文件的配置,如打包类型、继承设置、dependencyManagement和properties的使用,以及子模块的POM配置,旨在简化大型项目的管理和维护。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

不太会使用 IDEA 创建 Maven 的多模块项目,而在实际的项目开发中又经常遇到,并且自己平时写得一些小模块可以放在一个父项目中。所以,这一简要地记录一下。

提示:以下是本篇文章正文内容,下面案例可供参考

1. 多模块项目介绍

Maven 多模块项目通常由一个父模块和若干个子模块构成,每个模块都对应着一个pom.xml。它们之间通过继承和聚合(也称作多模块)相互关联。多模块适用于一些比较大的项目,通过合理的模块拆分,实现代码的复用,便于维护和管理。如下图:
在这里插入图片描述
其中,sb 是父模块,sb_vue 是子模块。

2. 多模块项目创建

这里每个模块都是 SpringBoot 项目,不过是由 Maven 项目改造的,下面简要介绍下创建过程。

2.1 父模块创建

  1. New 一个 Maven 项目:File —New—Project,填写一个 Project Name,如:sb
  2. 填写 groupId、artifactId、package。这里就随便写咯
    • groupId是项目组织唯一的标识符,实际对应JAVA的包的结构
    • artifactID是项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称
    • package最好是以groupId.artifactId打头的
  3. 一些其他操作

2.2 子模块创建

在上面创建好的 sb 工程名上,点击右键,选择New–>Module,进入New Module页面。后面其他的参数都可参照父模块的参数设置。

到这里,一个父模块和子模块的创建就完成了。如下图:
在这里插入图片描述
删除父模块的src目录,因为此处的父模块只做依赖管理,不需要编写代码

3. 多模块项目配置

首先将 Maven 项目配置成 SpringBoot 项目。
导入 parent 标签

<parent>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-parent</artifactId>
	<version>2.0.2.RELEASE</version>
</parent>

导入 SpringBoot 依赖
这里父模块就不引入,子模块会引入 web 依赖的

添加 主类
SpringBoot 项目的主方法的类

3.1 父模块POM文件配置

父pom 是为了抽取统一的配置信息和依赖版本控制,方便子pom直接引用,简化子pom的配置。

3.1.1 父模块的打包类型

多模块项目中,父模块打包类型必须是pom,同时以给出所有的子模块,其中每个module,都是另外一个maven项目。

在这里插入图片描述
给父模块添加子模块时,IDEA 会在 modules 标签中自动添加的

3.1.2 继承设置

继承是maven中很强大的一种功能,继承可以使子pom获得parent中的各项配置,对子pom进行统一的配置和依赖管理。父pom中的大多数元素都能被子pom继承.

3.1.3 使用dependencyManagement管理依赖版本号

一般在项目最顶层的父pom中使用该元素,让所有子模块引用一个依赖而不用显式的列出版本号。maven会沿着父子层次向上走,直到找到一个拥有dependencyManagement元素的项目,然后它就会使用在这个dependencyManagement元素中指定的版本号。
在这里插入图片描述

3.1.4 使用properties控制依赖包的版本号,便于版本维护

在properties标签中,添加各依赖包的版本号,然后在dependency中直接引用该依赖版本号的值即可。
在这里插入图片描述
父模块 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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值