集成maven和Spring boot的profile功能


思路:maven支持profile功能,当使用maven profile打包时,可以打包指定目录和指定文件,且可以修改文件中的变量。spring boot也支持profile功能,只要在application.properties文件中指定spring.profiles.active=xxx 即可,其中xxx是一个变量,当maven打包时,修改这个变量即可。

1。配置maven 的profile

    
    
        
            dev
            
                dev
                true
            
            
                true
            
        
        
            sit
            
                sit
                true
            
        
        
            prd1
            
                prd1
                true
                provided
            
        
        
            prd2
            
                prd2
                true
                provided
            
        
    

其中profiles.active是我们定义的一个变量,可通过mvn命令指定,别人也能访问

在build中配置可修改可访问资源文件

        
            
                src/main/resources
                true
                
                    application-dev.properties
                    application-sit.properties
                    application-prd1.properties
                    application-prd2.properties
                
            
            
                src/main/resources
                true
                
                    application-${profiles.active}.properties
                    application.properties
                
            
        

其中  ${profiles.active}是上面profile中指定的变量

2.配置springboot的profile

  这是通过spring.profiles.active指定

  在application.properties中指定spring.profiles.active=@profiles.active@,即可这样就将maven与springboot的profile结合了

3.打包命令:mvn clean package -Dmaven.test.skip=true -P prod -e