在应用中,我们经常会遇到本地,测试和生产3种不同的环境,因此需要去配置不同的application.
定义resources:
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>*.*</include>
</includes>
<filtering>true</filtering>
</resource>
<resource> <directory>config/${environment}</directory> <!--定义资源文件的位置 --> <filtering>true</filtering> </resource> <resources>
在项目下建立config,config下建立对应的文件夹(local,sit,uat,release文件夹),在文件夹下放置application.properties等配置启动文件。
mvn的pom中设置:
<!-- 不同环境下使用的配置文件路径 --> <profiles> <profile> <id>sit</id> <properties><environment>local</environment></properties> <activation> <activeByDefault>true</activeByDefault> <!--设置默认值 --> </activation>
</profile> <profile> <id>sit</id> <properties><environment>sit</environment></properties> </profile> <profile> <id>uat</id> <properties><environment>uat</environment></properties> </profile> <profile> <id>release</id> <properties><environment>release</environment></properties> </profile> </profiles>
如果在profiles中为设置默认值,还可以在pom中设定:
<activeProfiles> <activeProfile>sit</activeProfile> </activeProfiles>
这样我们在mvn打包时输入以下命令,就会打出对应的sit下的属性文件。
>mvn -Psit package