创建主模块rail-plate-line

1、点击Create New Project  --> 选择Spring Initializr  -- > 选择本地jdk

2、Group为com.dingcheng365,Artifact为rail-plate-line,点击next

3、不选择任何依赖,直接点击next

4、 设置Project name为rail-plate-line(默认的也是),项目放在D:\Projects\IDEAWorkSpace下,点击finish,创建完成。

项目结构:

这里删除不需要的文件,只留.idea文件夹、pom.xml和rail-plate-line.xml

删除完毕之后的项目结构:

创建子项目rpl-web

1、 在主项目rail-plate-line右键,依次选择New --> Module

2、 同样选择Spring Initializr,SDK使用主项目的SDK就可以,点击next

3、 设置Group为com.dingcheng365,Artifact为rpl-web,Package为com.dingcheng365.rpl

由于这个子项目是启动项目,所以命名的时候才使用根目录命名。点击next

4、 添加web --> Spring Web Starter依赖,点击next

5、 保持默认即可,点击finish,子项目创建成功。

Ctrl + s或者刷新项目后,会出现.iml文件,此时的项目结构:

6、 删除文件,rpl-web子项目仅保留src文件夹、pom.xml、rpl-web.iml文件,删除后的项目结构:

7、 修改pom.xml

修改rail-plate-line(主项目)下的pom.xml,添加<modules>,将新创建的rpl-web添加进去。即添加:

<modules>
<module>rpl-web</module>
</modules>

在子项目的pom.xml中找到<parent>标签,复制主项目pom.xml中的groupId、artifactId、version到子项目的<parent>标签,覆盖相同的属性:

覆盖之前的子项目的parent标签:

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.6.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>

覆盖之后的parent标签:

<parent>
<groupId>com.dingcheng365</groupId>
<artifactId>rail-plate-line</artifactId>
<version>0.0.1-SNAPSHOT</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>

点击Import Changes。

使用同样的方法创建其余两个子项目rpl-sys、rpl-core,唯一不同的地方在于第三步设置Package的时候分别为com.dingcheng365.rpl.syscom.dingcheng365.rpl.core。而且这两个子项目不需要添加web依赖。

创建完毕后的项目结构:

子项目中src\main\resources下的application.properties和src\main\java下的SpringBoot启动类Application.java保留web子项目的就可以,其他两个项目都需要删除。

rpl-web子项目中需要使用rpl-core和rpl-sys项目中的类和方法,需要在rpl-web子项目中的pom.xml中添加两个子项目的引用。添加:

<dependency>
<groupId>com.dingcheng365</groupId>
<artifactId>rpl-core</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.dingcheng365</groupId>
<artifactId>rpl-sys</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>

中间的三个属性可以到另外两个子项目的pom.xml中复制。

至此,项目创建完成!!

如何创建一个SpringBoot多模块项目的更多相关文章

  1. Idea创建一个springboot多模块项目

    一.创建空Maven项目 二.左边选择maven,右边可以什么不选,直接next: 三.填写artifactId,点击next直到finish 四.finish后,idea会生成如下结果模块,删除sr ...

  2. Idea创建一个Springboot单模块项目

    1.打开IDEA,创建新项目,选择Spring Initializr,选择SDK为你的java版本. 2.点击下一步,输入Artifact 3.点击下一步,选择web 4.finish 5.完成后id ...

  3. spting Boot 创建一个springBoot项目

    spting Boot 创建一个springBoot项目 1)学习springBoot使用软件:IDEA软件(前面的文章有安装idea的过程). 也可以使用另一种方法在https://start.sp ...

  4. 使用IDEA创建一个springboot项目

    工欲善其事,必先利其器. 不难发现,还是有很多小朋友在使用eclipse开发java项目.当你接触IDEA后,一切都变得美好了. 使用IDEA创建一个springboot项目是一件极其简单的事情.界面 ...

  5. 如何使用IDEA快速创建一个springboot项目

    如何使用IDEA快速创建一个springboot项目 https://jingyan.baidu.com/article/0964eca24fdd938284f53640.html

  6. 2 springboot多模块项目

    一般来说创建一个springboot工程基本就可以了,但是有的时候可能需要将业务模块逻辑划分,每块业务模块都是一个工程,下边演示下多模块进行开发 目录结构 ...somefun ......somef ...

  7. 使用IDEA构建Spring-boot多模块项目配置流程

    使用IDEA构建Spring-boot多模块项目配置流程 1.创建项目 点击Create New Project 在左侧选中Spring Initializer,保持默认配置,点击下一步. 在Grou ...

  8. SpringBoot2.x入门:快速创建一个SpringBoot应用

    前提 这篇文章是<SpringBoot2.x入门>专辑的第2篇文章,使用的SpringBoot版本为2.3.1.RELEASE,JDK版本为1.8. 常规的套路会建议使用Spring官方提 ...

  9. 简单创建一个SpringCloud2021.0.3项目(四)

    目录 1. 项目说明 1. 版本 2. 用到组件 3. 功能 2. 上三篇教程 3. 日志处理 1. 创建日志公共模块 2. Eureka引入日志模块 4. 到此的功能代码 5. 注册中心换成naco ...

随机推荐

  1. Python之字符(2)

    1.string.issupper()表示判断字符是否全部为小写字母. string1 = "abcdef" string2 = "ABCdef" string ...

  2. [追热点]学习Rust之选择IDE

    学习语言非常需要实际上手写代码,自然绕不开IDE工具,所以第一时间当然是选择IDE. Rust官网推荐 先去看看Rust官网推荐了什么IDE:工具 - Rust 程序设计语言 无论您喜欢用命令行还是可 ...

  3. WKWebView单个界面添加请求头

    https://www.jianshu.com/p/14b9ea4bf1d4 https://github.com/Yeatse/NSURLProtocol-WebKitSupport/blob/ma ...

  4. java8函数式编程实例

    什么是函数式编程 函数式编程是java8的一大特色,也就是将函数作为一个参数传递给指定方法.别人传的要么是基本数据类型,要么就是地址引用 ,我们要穿一个“动作”. Stream 说到函数式编程,就不得 ...

  5. 腾讯云 docker 镜像 dotnet/core sdk aspnet

    ccr.ccs.tencentyun.com/mcr.microsoft.com/dotnetcoresdk  = mcr.microsoft.com/dotnet/core/sdk  => 3 ...

  6. golang 中的引号

    前言 go中的单引号',双引号",反引号`,他们用法的区别. 需要先了解字符编码的区别,由来. 单引号 单引号里面只能有一个字符,一般只能用来包裹一个字节的ASCII码字符.他的类型是Gol ...

  7. python爬虫(三) 用request爬取拉勾网职位信息

    request.Request类 如果想要在请求的时候添加一个请求头(增加请求头的原因是,如果不加请求头,那么在我们爬取得时候,可能会被限制),那么就必须使用request.Request类来实现,比 ...

  8. 从Uber司机只是合同工看,零工经济将受沉重打击?

    Uber自诞生以来,就始终处于漩涡之中--与当地的同类平台斗.创始人出现负面新闻.司机不断抗议--而就在近日"流血上市"后,Uber也没能迎来好时光.反而是股价不断下跌,市值疯狂蒸 ...

  9. Xcode 8 修改已创建工程的 organizion name

    在创建工程时,会需要填写公司信息,对于已创建的工程,新建文件时,公司信息显示为刚开始创建的公司信息.如果需要对公司名称进行修改,需进行以下 可以 打开 工程名.xcodeproj 文件 (显示包内容) ...

  10. js图片瀑布流效果

    要实现图片瀑布流效果,首先得准备几张图片. html的部分比较简单就是将图片加载到浏览器就可以了 代码如下(注意放的图片多一点要不然之后无法滑动鼠标就无法达到瀑布流效果): <!DOCTYPE ...