栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

springboot 多模块项目构建笔记

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

springboot 多模块项目构建笔记

springboot 多模块项目创建 说明:工程中的多模块使用maven进行管理 一:首先在idea中创建一个spring boot工程作为父项目

创建完成后,删除其中多余的目录,只保留idea文件夹,pom文件以及.iml文件

二:创建子模块

子模块是使用maven进行管理的,所以创建子模块的时候是创建maven模块
依次创建 base,dao,service,web模块
其中使用web模块作为多模块项目的启动项目,在创建的时候添加spring web依赖
创建完成后,将所有模块的mvnw,mvnw.cmd,.mvn全部删除
保留src文件夹即可,除了web启动模块的启动类和配置文件,其他模块的一律删除

三:编辑父工程的pom文件

1.声明夫模块打包类型,必须为pom

pom

2.指明继承关系,使用parent标签,表明夫项目的具体信息


        org.springframework.boot
        spring-boot-starter-parent
        2.2.5.RELEASE
         
    

3.抽取统一的配置信息和依赖版本,使用标签

   
        3.7.0
        UTF-8
        UTF-8
        1.8
        3.1.1
        1.2.8
        1.21
        3.0.0
        2.3.2
        2.2.0
        1.4.0
        1.2.78
        5.8.0
        5.8.0
        2.11.0
        1.4
        3.2.2
        4.1.2
        1.7
        0.9.1
    

3.声明所有子模块:使用 标签声明所有子模块
示例:

   
        base
        dao
        service
        web
    

4.依赖版本说明,使用标签 附上常用的一些依赖

 
        

            
            
                org.springframework.boot
                spring-boot-dependencies
                2.5.5
                pom
                import
            

            
            
                com.alibaba
                druid-spring-boot-starter
                ${druid.version}
            

            
            
                eu.bitwalker
                UserAgentUtils
                ${bitwalker.version}
            

            
            
                org.mybatis.spring.boot
                mybatis-spring-boot-starter
                ${mybatis-spring-boot.version}
            

            
            
                com.github.pagehelper
                pagehelper-spring-boot-starter
                ${pagehelper.boot.version}
            

            
            
                com.github.oshi
                oshi-core
                ${oshi.version}
            

            
                net.java.dev.jna
                jna
                ${jna.version}
            

            
                net.java.dev.jna
                jna-platform
                ${jna.version}
            

            
            
                io.springfox
                springfox-boot-starter
                ${swagger.version}
                
                    
                        io.swagger
                        swagger-models
                    
                
            

            
            
                commons-io
                commons-io
                ${commons.io.version}
            

            
            
                commons-fileupload
                commons-fileupload
                ${commons.fileupload.version}
            

            
            
                org.apache.poi
                poi-ooxml
                ${poi.version}
            

            
            
                org.apache.velocity
                velocity
                ${velocity.version}
                
                    
                        commons-collections
                        commons-collections
                    
                
            

            
            
                commons-collections
                commons-collections
                ${commons.collections.version}
            

            
            
                com.alibaba
                fastjson
                ${fastjson.version}
            

            
            
                io.jsonwebtoken
                jjwt
                ${jwt.version}
            

            
            
                com.github.penggle
                kaptcha
                ${kaptcha.version}
            

            
            
                com.ruoyi
                ruoyi-quartz
                ${ruoyi.version}
            

            
            
                com.ruoyi
                ruoyi-generator
                ${ruoyi.version}
            

            
            
                com.ruoyi
                ruoyi-framework
                ${ruoyi.version}
            

            
            
                com.ruoyi
                ruoyi-system
                ${ruoyi.version}
            

            
            
                com.ruoyi
                ruoyi-common
                ${ruoyi.version}
            



        
    
四:编辑子模块的pom文件

1.继承父工程,使用parent标签

 
        com.example
        hangge
        0.0.1-SNAPSHOT
    

2.添加依赖,使用标签和


        
            org.projectlombok
            lombok
            1.18.6
        
    

3.其他模块配置类似
4.web模块配置 用于表明编译配置,使用的插件进行打包,没有这个子模块就不会被打进jar包


        
            
                org.springframework.boot
                spring-boot-maven-plugin
                2.1.1.RELEASE
                
                    true 
                
                
                    
                        
                            repackage
                        
                    
                
            
               
                org.apache.maven.plugins   
                maven-war-plugin   
                3.1.0   
                
                    false
                    ${project.artifactId}
                   
              
        
        ${project.artifactId}
    
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/760572.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号