Spring Boot 自定义starter-parent

背景

我们在建立 SpringBoot 项目的时候,刚建好都会继承自一个父的 parent:

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

我们要自定义自己的 parent,有以下几个理由:

  • 定义我们自己的开发规范:在自定义的 parent 中可以规范引入的依赖。
  • 提高开发效率:不用每个人都去关心共性的部分。

开始

我们建立一个 maven 项目,因为我们是父pom,因此只需要保留pom文件,其它都可以直接删除掉。pom 文件内容如下:




  4.0.0

  com.example
  parent
  
  pom
  1.0-SNAPSHOT
  Self Parent Project

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

  
    UTF-8
    UTF-8
    UTF-8
    1.8
    3.4
  

  
    
      
        org.apache.commons
        commons-lang3
        ${commons-lang.version}
      
    
  

  
    ${project.artifactId}
    
      
        
        
          org.apache.maven.plugins
          maven-release-plugin
          
            
            true
            
            v@{project.version}
            false
            
            true
            true
            
              .project
              .settings
              .classpath
              **\.project
              **\.settings
              **\.classpath
            
            
          
          
            
              org.apache.maven.scm
              maven-scm-provider-gitexe
              1.9.4
            
          
        
        
        
          org.apache.maven.plugins
          maven-source-plugin
          
            
              
                jar
              
            
          
        
        
        
          org.apache.maven.plugins
          maven-enforcer-plugin
          3.0.0-M2
          
            
              enforce-banned-dependencies 
              
                enforce 
              
              
                 
                   
                    
                      
                        commons-lang:commons-lang 
                      
                    
                  
                
                true 
              
            
          
        
      
    

    
      
      
        org.apache.maven.plugins
        maven-enforcer-plugin
      
    
  

  
    
      Releases
      Local Nexus Repository
      http://192.168.1.177:8081/nexus/content/repositories/releases
    
    
      Snapshots
      Local Nexus Repository
      http://192.168.1.177:8081/nexus/content/repositories/snapshots
    
  



这里有一点需要注意:

  • packaging 类型需要指定为pom。

扩展

上面的 POM 里用到了几个 Maven 插件:

  • maven-enforcer-plugin:该插件的使用和介绍可以参考这篇文章:https://blog.csdn.net/wangjunjun2008/article/details/11599307

你可能感兴趣的:(Spring Boot 自定义starter-parent)