springboot 多module 打包

多module项目打包,转载自CSDN。此方法不用配置module的artifact。

项目目录:

  • 项目 P
  • 模块 A
  • 模块 B
  • 公有基础模块 C
  • Mybatis基础模块 M

1.父pom.xml文件:


  com.parent
  demo
  0.0.1-SNAPSHOT

  
  
    C
    M
  

  
  
      org.springframework.boot
      spring-boot-starter-parent
      2.0.0.M5
  

  
  
    
      
        com.module
        c
        ${project.version}
      
      
        com.module
        m
        ${project.version}
      
    
  

  
  
    UTF-8        
  UTF-8
    1.8
  

  
  
    
      org.springframework.boot
      spring-boot-starter
    
  

  
  
    
      
        org.apache.maven.plugins
        maven-compiler-plugin
        3.1
          
            ${java.version}
            ${java.version}
            
      

      
          org.apache.maven.plugins
          maven-surefire-plugin
          2.19.1
            
              true    
            
      
    
  

2.模块A的pom.xml

com.module
  a
  0.0.1-SNAPSHOT
  jar

  
  
    com.parent
    demo
    0.0.1-SNAPSHOT
    ../pom.xml
  

  
  
        
            
                org.springframework.boot
                spring-boot-maven-plugin
          
            
            com.module.a.Application
            ZIP
          
          
            
              
                repackage
              
            
          
      
        
    
  1. 模块B的pom.xml
    同模块A

4.模块C的pom.xml
共有模块,不需要打包,否则会报错,因为其他模块在打包的时候会自动添加依赖进去,如果这里打包了,其他的模块就找不到该依赖了.

com.module
    c
    0.0.1-SNAPSHOT
    jar

  
  
    com.parent
    demo
    0.0.1-SNAPSHOT
    ../pom.xml
  
  1. 模块M的pom.xml
    项目中使用的Mybatis的话,是作为一个单独的模块来处理的,这个Mybatis需要打包.
com.module
  m
  0.0.1-SNAPSHOT
  jar

  
  
    com.parent
    demo
    0.0.1-SNAPSHOT
    ../pom.xml
  

  
  
        
            
                org.mybatis.generator
                mybatis-generator-maven-plugin
                1.3.5
                
                    
                        Generate MyBatis Artifacts
                        none
                        
                            generate
                        
                    
                
                
                    true
                
            
        
    

打包
parent 目录下
mvn clean package
如果使用了多个模块,上面的命令是会吧全部的模块都执行打包,如只是打包某个模块
mvn -pl A -am install

你可能感兴趣的:(springboot 多module 打包)