一、背景
希望能够实现根据不同的环境动态读取对应的配置。
二、准备
-
bootstrap.yml文件内容
spring: profiles: active: @profile.name@不同环境的配置:application-dev.yml、application-prod.yml
pom.xml文件中profile配置
<profiles> <profile> <id>local</id> <properties> <profile.name>local</profile.name> </properties> </profile> <profile> <id>dev</id> <properties> <profile.name>dev</profile.name> </properties> </profile> <profile> <id>prod</id> <properties> <profile.name>prod</profile.name> </properties> </profile> </profiles>
三、问题处理
- 执行mvn clean install 命令,检查对应项目中target/class中的bootstrap.yml文件中profile是否正确。
- 查看pom.xml文件中的打包配置,<resource>中是否加了<filtering>true<filtering>,即
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>**/**</include>
</includes>
</resource>
</resources>
</build>

发布评论