当前位置: 首页 > news >正文

SpringBoot(十九)创建多模块Springboot项目(完整版)

之前我有记录过一次SpringBoot多模块项目的搭建,但是那一次只是做了一个小小的测试。只是把各模块联通之后就结束了。

 

最近要增加业务开发,要将目前的单模块项目改成多模块项目,我就参照了一下我上次搭建的流程,发现总是有报错。上次搭建的比较顺利,很多细枝末节也没有仔细去研究。结果就是这次多模块项目搭建的过程就充满了奇幻。就有了这篇笔记。

 

一:创建父项目

首先我们先在IDEA中创建一个父项目,使用Maven托管。如下图所示:

点击下一步,不需要添加任何依赖,点击创建完成即可。

项目创建成功如下图所示:

删除图上红框标注的所有文件,只保留pom.xml

 

二:创建子项目

我这里现阶段有两个子项目,分别是入口模块Entry和功能模块WxProgram。

我们先来创建入口模块Entry,入口模块,顾名思义就是他只做入口使用,除了启动类之外,没有其他任何功能。

功能模块WxProgram,就是一个完整的SpringBoot项目,该有的功能都有,例如:Controller,service,dao,pojo,filter等

 

1:创建功能模块WxProgram

这个跟创建父工程的流程是一样的,唯一不同的就是第一步,如下图所示:

 

建议创建子模块的包名是一致的,我这里使用的组名是:com.modules(建议每个子模块使用的组名都一致)

 

2:创建入口模块entry

参考创建功能模块WxProgram

 

三:配置父模块pom.xml

父模块得配置pom.xml比较简单,分为三部分:

1:打包方式:

<!-- 父模块的打包方式-->
<packaging>pom</packaging>

2:配置子模块

<!--将子模块放在一堆    start   -->
<modules><module>WxProgram</module><module>Entry</module>
</modules>
<!--将子模块放在一堆    end     -->

3:配置build插件

<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.1</version><configuration><source>${java.version}</source><target>${java.version}</target></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><version>2.22.1</version><configuration><skipTests>true</skipTests>    <!--默认关掉单元测试 --></configuration></plugin></plugins>
</build>

http://www.lryc.cn/news/484645.html

相关文章:

  • Navicat 17 功能简介 | 单元格编辑器
  • MySQL【四】
  • 简单叙述 Spring Boot 启动过程
  • 微信小程序自定义tabbar;禁用某个tab;修改某个tab的样式
  • 力扣113:路径总和II
  • JavaScript字符串常用方法
  • xtu oj 加一
  • QTcpSocket 服务端和客户端
  • Isaac Sim+SKRL机器人并行强化学习
  • 项目中用户数据获取遇到bug
  • SpringSecurity+jwt+captcha登录认证授权总结
  • 项目技术栈-解决方案-web3去中心化
  • 【AI声音克隆整合包及教程】第二代GPT-SoVITS V2:创新与应用
  • 分清数据链路层、网络层、传输层的区别,以及这些层面的代表协议
  • git没有识别出大写字母改成小写重命名的文件目录
  • 自己动手写Qt Creator插件
  • 数据重塑:长宽数据转换【基于tidyr】
  • 多模态大模型开启AI社交新纪元,Soul App创始人张璐团队亮相2024 GITEX GLOBAL
  • 实验6记录网络与故障排除
  • QEMU 模拟器中运行的 Linux 系统
  • Ceph PG(归置组)的状态说明
  • Docker使用docker-compose一键部署nacos、Mysql、redis
  • HTTP常见的状态码有哪些,都代表什么意思
  • WebKit的Windows接口(适用2024年11月份版)
  • Android 最新的AndroidStudio引入依赖失败如何解决?如:Failed to resolve:xxxx
  • ue5 蓝图学习(一)结构体的使用
  • docker--工作目录迁移
  • Golang | Leetcode Golang题解之第556题下一个更大元素III
  • 2分钟在阿里云ECS控制台部署个人应用(图文示例)
  • 2023.8 用于生物医学问答的选择性 UMLS 知识注入