创建主模块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. Mac OS删除文件夹和文件的命令

    https://www.jianshu.com/p/0376bf0514e3 2017.08.18 17:27* 字数 219 阅读 16709评论 0喜欢 0 rmdir删除空目录,不过一旦目录非空 ...

  2. 如何去掉Eclipse注释中英文单词的拼写错误检查

  3. DCL和DQL

    数据查询语言(DQL,Data Query Language) 主要是一些查询的sql语句. 语法 select * from test: 数据控制语言(DCL, Data Control Langu ...

  4. 算法复杂度图示&JavaScript算法链接

    https://juejin.im/post/5c9a1d58e51d4559bb5c6694

  5. 1004 Counting Leaves (30分) DFS

    1004 Counting Leaves (30分)   A family hierarchy is usually presented by a pedigree tree. Your job is ...

  6. HDU 5570:balls 期望。。。。。。。。。。。。。。。

    balls  Accepts: 19  Submissions: 55  Time Limit: 6000/3000 MS (Java/Others)  Memory Limit: 65536/655 ...

  7. 「CF1303C Perfect Keyboard」

    前置芝士 图的遍历:通过DFS或者BFS遍历全图. 前向星:用来存边,但是在本题用也可以用一个二维数组解决. 具体做法 先从判断YES和NO开始,可以发现如果一个字母与三个及以上不同的字母相邻时肯定是 ...

  8. 超参数 hyperparameters

    转载:https://www.cnblogs.com/qamra/p/8721561.html 超参数的定义:在机器学习的上下文中,超参数是在开始学习过程之前设置值的参数,而不是通过训练得到的参数数据 ...

  9. 移动端一像素边框解决方案[css scale]

    新建一个border.css的文件,然后将代码复制粘贴,然后引用border.css样式文件,然后给需要添加边框的元素,加相应的类样式. tips: border-bottom[一像素下边框]:bor ...

  10. 设计模式课程 设计模式精讲 12-2 适配器模式coding

    1 重要 1.1 类适配器和对象适配器最大的区别 2 代码演练 2.1 代码演练1(类适配器模式) 2.2 代码演练2(对象适配模式) 2.3 代码演练3(具体应用场景) 1 重要 1.1 类适配器和 ...