Spring boot 使用profile完成不同环境的maven打包功能

我们在日常开发工作中通常会根据不同的项目运行环境,添加不同的配置文件,例如 开发环境,测试环境,生产环境等,每次手工的修改配置文件太过于繁琐。通过maven打包时确定需要使用的配置文件可以很好的解决这个问题。

下面看一下代码目录

Spring boot 使用profile完成不同环境的maven打包功能_第1张图片

application-dev.properties对应开发环境

application-test.properties对应测试环境

application-prod.properties对应生产环境

application.properties中填写spring.profiles.active=@activatedProperties@,这里的@activatedProperties@是一个变量对应pom文件里的环境配置。


下面是pom文件的配置

	
		
			dev
			
				
				dev
			
			
				
				true
			
		
		
			test
			
				test
			
		
		
			prod
			
				prod
			
		
	
在pom文件里分别配置好不同环境的文件名称, 注意:dev中的dev与配置文件名称application-dev.properties要一致
activatedProperties名称对应application.properties配置文件中的spring.profiles.active=@activatedProperties@

当maven打包时会用pom文件里dev中的值替换掉application.properties配置文件中的@activatedProperties@

下面配置maven打包插件


    
        
        	  
            src/resources 
               
            true
        
    
		
			
				org.springframework.boot
				spring-boot-maven-plugin
				1.5.2.RELEASE
				
			           com.duan.SpringbootMybatis.App
			        
				
					
						
							
							repackage
						
					
				
			
		
    

配置完成,下面我们进行打包操作,我是使用eclipse进行打包,项目pom文件右键,run as ---> maven build

Spring boot 使用profile完成不同环境的maven打包功能_第2张图片

观察控制台输入日志

Spring boot 使用profile完成不同环境的maven打包功能_第3张图片

已经构建成功,刷新一下项目,target会生成SpringbootMybatis-0.0.1-SNAPSHOT.jar包。

我们可以观察一下jar包的目录结构:

Spring boot 使用profile完成不同环境的maven打包功能_第4张图片

打开manifest.mf文件

Spring boot 使用profile完成不同环境的maven打包功能_第5张图片

查看启动类是否正确。

下面我们执行一下这个jar包,输入执行命令,java -jar

Spring boot 使用profile完成不同环境的maven打包功能_第6张图片


出现启动成功信息,对应端口号是8888与我们application-prod.properties配置文件中的一致,说明配置成功了。

Spring boot 使用profile完成不同环境的maven打包功能_第7张图片

浏览器访问一下

Spring boot 使用profile完成不同环境的maven打包功能_第8张图片

访问成功!

主要利用了maven打包时,拦截配置文件使用pom文件中的值替换掉spring.profiles.active=@activatedProperties@中的变量,完成动态配置文件的使用功能。

你可能感兴趣的:(spring,boot,maven,profile,编程)