赞
踩
至于哪个具体的配置文件会被加载,需要在application.properties文件中通过spring.profiles.active属性来设置,其值对应{profile}值。
application.properties
#dev
spring.profiles.active=dev
开发环境(默认)
java -jar xxx.jar
可以观察到服务端口被设置为8001,也就是默认的开发环境(dev)
测试环境
java -jar xxx.jar --spring.profiles.active=test
可以观察到服务端口被设置为8002,也就是测试环境的配置(test)
生产环境
java -jar xxx.jar --spring.profiles.active=prod
可以观察到服务端口被设置为8003,也就是生产环境的配置(prod)
在application.yml文件中添加如下配置:
# 指定执行环境
spring:
profiles:
active: @package.environment@
<profiles> <profile> <id>dev</id> <properties> <package.environment>dev</package.environment> </properties> <!-- 是否默认 true表示默认--> <activation> <activeByDefault>true</activeByDefault> </activation> </profile> <profile> <id>test</id> <properties> <package.environment>test</package.environment> </properties> </profile> <profile> <!-- 生产环境 --> <id>prod</id> <properties> <package.environment>prod</package.environment> </properties> </profile> </profiles>
<build>
...
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>application.yml</include>
<include>application-${package.environment}.yml</include>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
...
</build>
打包命令
mvn clean package -P dev
mvn clean package -P test
mvn clean package -P prod
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。