作为一个程序员,不写博客是对不起自己的身份的,在平台记录一些平时使用的心得,大家一起交流,毕竟开源共享,一起交流嘛
使用一个东西三问自己
step1:是什么?
多profile文件可以选择不同的maven实现打包
step2:为什么?
应对不同的环境使用不同的文件,不用重新打包,亦不用修改配置文件,动动手指就能搞定
step3:怎么做?
重点来了。我们暂且有两个系统环境,测试和生产,那么文件结构如下,共三个文件,一个主文件***.yml,两个对应测试和生产文件***-dev.yml和***-prod.yml
入口文件***.yml内容:
spring: profiles: active: @profile.active@
测试环境***-dev.yml文件内容:
server: port: 8080
生产环境***-prod.yml文件内容:
server: port: 9090
接下来配置pom文件内容:
<profiles> <profile> <id>dev</id> <properties> <profile.active>dev</profile.active> </properties> </profile> <profile> <id>prod</id> <properties> <profile.active>prod</profile.active> </properties> </profile> </profiles> <build> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> <includes> <include>application.yml</include> //profile.active 对应主文件***.yml文件的值 <include>application-${profile.active}.yml</include> </includes> </resource> </resources> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
至此,多profile配置已经完成了,如果pom文件<include>application-${profile.active}.yml</include>报错,重新编辑maven即可。
接下来让我们看一下效果
使用dev环境:
使用prod环境: