SpringBoot項目,肯定會涉及多個環境部署等情況
首先要在自己項目裏有這麼一套不同部署環境的配置
配置主要在pom.xml中,添加各application-後綴名,默認local,activeByDefault屬性true
<!-- 部署的配置版本 -->
<profiles>
<profile>
<id>local</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<profileActive>local</profileActive>
</properties>
</profile>
<profile>
<id>dev</id>
<properties>
<profileActive>dev</profileActive>
</properties>
</profile>
<profile>
<id>test</id>
<properties>
<profileActive>test</profileActive>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<profileActive>prod</profileActive>
</properties>
</profile>
</profiles>
在build裏添加。該名字application-${profileActive}.properties顯而易見,就是上面的profileActive名字
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<!-- 是否替換@profileActive@表示的maven properties屬性值 -->
<filtering>true</filtering>
<includes>
<include>applicationContext.xml</include>
<include>mapper/*</include>
<include>mapper/*/*Mapper.xml</include>
<include>application.properties</include>
<include>application-${profileActive}.properties</include>
</includes>
</resource>
</resources>
</build>
pom.xml配置好後,還需要在application.properties總配置文件中加上 spring.profiles.active = @profileActive@,告訴程序我們需要讀取哪個分區配置文件application-${profileActive}.properties的內容。
至此完成配置。
在命令中 mvn install -Ptest 打的是application-test.properties的jar包,mvn install -Pdev打的是application-dev.properties的jar包,如此類推。