springboot不同环境使用不同配置文件打包方式
作者:cap_jack_sp
这篇文章主要介绍了springboot不同环境使用不同配置文件打包方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
在POM文件中新增以下配置
<profiles> <profile> <id>dev</id> <properties> <package.environment>dev</package.environment> </properties> <!-- 是否默认 true表示默认--> <activation> <activeByDefault>true</activeByDefault> </activation> </profile> <profile> <id>stage</id> <properties> <package.environment>stage</package.environment> </properties> </profile> </profiles>
在application.yml中新增以下参数
spring: profiles: active: @package.environment@
同时新增配置文件application-{package.environment}.yml
按照POM文件中,我的新增配置文件分别为application-dev.yml application.stage.yml
如下图所示
在application-dev.yml中配置文件内容为
something: hcfdevv
在application-stage.yml中配置文件内容为
something: hcfstage
测试使用该配置
@RestController @SpringBootApplication public class HelloController extends SpringBootServletInitializer { @Value("${something}") String something; @RequestMapping("hello") String hello() { return something; } public static void main(String[] args) { SpringApplication.run(HelloController.class, args); } @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(HelloController.class); } }
打包测试
运行打包代码
mvn package -P dev
得到war包
将war包放入tomcat的webapps下,启动Tomcat
显示application-dev.yml中配置的参数内容
运行打包代码
mvn package -P stage
得到war包
将war包放入tomcat的webapps下,启动Tomcat
显示application-stage.yml中配置的参数内容。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。