创建maven管理的Spring-boot父子工程(模块化工程)

样例工程地址
https://github.com/1290054578/skill-research.git

1、模块父子工程创建

  • 1.创建一个Maven工程作为父级工程(总管模块工程的公共配置)
          直接Next不用做任何选择,建立一个Maven工程
    直接Next不用做任何选择,建立一个Maven工程

  • 2、Maven父级工程下创建Spring-boot模块工程
          Maven父级工程下创建Spring-boot模块工程,new module时,可以选择Spring Initializr

    2、pom.xml配置,模块工程之间的相互引用
          maven父工程pom配置
    在这里插入图片描述
          maven子模块工程配置
    在这里插入图片描述

3、工程整理

  • 按以上搭建完毕之后,删除父工程下的src文件夹,父工程只负责管理模块功能依赖引用
  • 删除service,dao,core…(命名不限)各个子模块工程下的resource文件夹,以及java文件夹下的Application启动类(Spring Initializr自动创建的)。只保留web(一个完整的启动工程)不动

4、Install工程打包

  • 不能正常打包,则创建配置存在问题,根据提示解决,一般在模块工程依赖时问题容易出现

5、创建模块工程出现的几个问题,解决办法:

  • 1、子模块之间相互引用,打包时报cat’t find XXXX:检查pom依赖,以及被依赖的工程文件夹路径,groupId artifactId等配置
  • 2、Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.2:XX(default-XXXX) :工程依赖了
  •  	<plugin>
     			<groupId>org.springframework.boot</groupId>
     			<artifactId>spring-boot-maven-plugin</artifactId>
         </plugin>
         系统会自动检测工程的main方法,在SpringTest类中随便实现一个main hello world,或者取消依赖即可
    
  • 3、Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.2:XXXX (default-XXXX) on project skill-research-service
		去掉plugin依赖后,依旧可能会报错,因为XXXApplicationTests中使用了如下注解
		@RunWith(SpringRunner.class)
		@SpringBootTest
		去掉即可

6、Install工程打包成功
在这里插入图片描述
7、模块工程引用注入
工程成功建立后,api模块引用service工程接口类进行注入。这一步若idea检测报错,检查模块工程依赖信息是否正确
在这里插入图片描述
8、启动工程配置

  • 1、配置依赖:步骤工程整理中,保留了一个完整的启动工程,在启动工程的pom.xml依赖中,依赖模块入口工程。
    这样在工程打包上线,或者启动聚合工程时,才能识别到各个模块。
    在这里插入图片描述

  • 2、启动扫描位置配置
    spring-boot启动时,会自动扫描启动类文件夹下所有文件,然而聚合工程文件在不同的模块中,这时候就需要在启动时配置扫描路径。
    这里是扫描所有模块工程的公共位置
    在这里插入图片描述

  • 3、启动时,若报错,找不到xml,或者mapper,启动类指定一下mapper扫描位置,父工程pom.xml指定xml打包位置,启动工程properties配置xml扫描位置即可

    Field iMsFansService in com.lonewolf.api.controller.MsFansController required a bean of type ‘com.lonewolf.service.mapper.MsFansMapper’ that could not be found.
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值