Springboot + Maven多模块打包

 1.明确好用的

参考链接: 

​​​​​​SpringBoot+Maven多模块项目(创建、依赖、打包可执行jar包部署测试)完整流程 - tianlong88 - 博客园
SpringBoot+Maven 多模块项目的构建、运行、打包实战|8月更文挑战 - 掘金

注意事项:

1.idea中project structure

Springboot + Maven多模块打包_第1张图片

2.父工程用pom,子模块用jar

3.在父pom文件里,标签下的依赖,实际上未引用,在子pom文件里需要在标签下自己引入

4.如果其中的子模块需要引入其他子模块,使用如下方式引用


    
        统一的groupId
        子模块名
    

5.在springboot application 所在的模块下的pom文件里写而不是最外层的pom.xml

            
                org.springframework.boot
                spring-boot-maven-plugin
                
                    springboot application main class 入口
                
                
                    
                        
                          repackage
                        
                    
                
            


    
        src/main/java
        
            **/*.*
        
        
            **/*.java
        
    
    
        src/main/resources
        
            **/*.*
        
    

6.最外层的pom.xml里只需要写通用的引用,引入所有子模块,modules标签即可

7.多种环境信息mvn clean install -P test

    
    
        
        
            dev
            
                dev
                servicedev
                businessdev
            
            
                false
            
        
        
        
            test
            
                test
                servicetest
                businesstest
            
            
                true
            
        
        
        
            product
            
                product
                serviceproduct
                businessproduct
            
            
                false
            
        
    

2.简单试验过的

使用springboot + assembly打包(自定义文件目录内容,灵活但复杂)

参考链接

spring-boot-assembly: Spring Boot项目使用maven-assembly-plugin根据不同环境打包成tar.gz或者zip

SpringCloud maven-assembly-plugin 多级目录打包 - 掘金

maven-assembly-plugin 插件多模块打包实例_xiaoxiaojavacsdn的博客-CSDN博客

将 Maven 中的多模块项目只打成一个 JAR 包-蒲公英云

springboot maven 多模块打包 jar 找不到mainClass 4小时血泪史_走码观花-CSDN博客_maven打包没有mainclass

你可能感兴趣的:(spring,boot,maven,java)