背景
以前的配置是这样的,所以经常启动或者打包的时候都需要修改配置文件,而且一不小心还会提交到git/svn上,非常不友好所以我选择配置profiles。
第一步
有多个配置文件用application+环境命名
第二步
<!-- 导入插件 -->
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<delimiters>
<delimiter>$</delimiter>
</delimiters>
<useDefaultDelimiters>false</useDefaultDelimiters>
</configuration>
</plugin>
在pom文件里的build->plugins添加代码依赖
第三步
<!--设置resource资源-->
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>application-${profiles.active}.yml</include>
<include>application.yml</include>
<include>**/*.xml</include>
<include>**/*.properties</include>
<include>META-INF/**</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<filtering>false</filtering>
<includes>
<include>static/**</include>
<include>page/**</include>
</includes>
</resource>
</resources>
也是在pom文件下不过是在build根目录里
第四步
<!--配置环境映射-->
<profiles>
<profile>
<!-- 生产环境 -->
<id>prod</id>
<properties>
<profiles.active>prod</profiles.active>
</properties>
</profile>
<profile>
<!-- 本地开发环境 -->
<id>dev</id>
<properties>
<profiles.active>dev</profiles.active>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<!-- 测试环境 -->
<id>test</id>
<properties>
<profiles.active>test</profiles.active>
</properties>
</profile>
</profiles>
在pom文件的project节点下添加代码
最后一步
spring:
profiles:
active: $profiles.active$
把application.yml的active改成如图所示。
至此验证是否成功配置可以ctrl+鼠标左键点击 p r o f i l e s . a c t i v e profiles.active profiles.active点的进去就说明成功了。
然后你就可以在maven打包的时候就可以选择自己需要的环境打包或者启动了