spring boot profiles网上一搜满眼全是
application.properties 不变的配置
application-dev.properties 开发配置
application-prod.properties 生产配置
然后在程序启动时指定, 如 java -jar xx.jar --spring.profiles.active=dev
这样写太麻烦, 而且不利于自动打包
--------------------------------------------------------------------------------------------
我的方法: spring boot 如果不提供配置, 则使用默认的, 如果提供了配置 ,则覆盖默认的
spring boot 覆盖默认配置规则是 包内config下的 > 包内根目录下的 > 默认配置
<build>
<resources>
<resource>
<directory>${basedir}/profiles/${build.profile.id}/</directory>
</resource>
<resource>
<directory>${basedir}/src/main/resources/</directory>
</resource>
</resources>
</build>
<profiles>
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<build.profile.id>dev</build.profile.id>
</properties>
</profile>
<profile>
<id>prod</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<build.profile.id>prod</build.profile.id>
</properties>
</profile>
</profiles>
pom文件中如上配置
maven命令: mvn clean package -Dmaven.test.skip=true -Pdev -U 这样会把dev中的打包到jar包中