SpringBoot 多环境设置 active: @profileActive@
【摘要】 pom配置增加@解析符<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <configuration> <delimiters> <delimiter>@</delimiter> ...
pom配置
增加@解析符
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<delimiters>
<delimiter>@</delimiter>
</delimiters>
<useDefaultDelimiters>false</useDefaultDelimiters>
</configuration>
</plugin>
复制
spring profile配置
<!-- Maven控制Spring Profile -->
<profiles>
<!--默认开启dev-->
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<profileActive>dev</profileActive>
</properties>
<build>
<!-- 产生的构件的文件名,默认值是${artifactId}-${version}-->
<finalName>${project.artifactId}</finalName>
</build>
</profile>
<profile>
<id>pro</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<profileActive>pro</profileActive>
</properties>
<build>
<!-- 产生的构件的文件名,默认值是${artifactId}-${version}-->
<finalName>${project.artifactId}</finalName>
</build>
</profile>
</profiles>
复制
根据先后顺序优先级配置
resources 配置
<build>
<!-- profile对资源的操作 -->
<resources>
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>application*.yml</exclude>
</excludes>
</resource>
<resource>
<directory>src/main/resources</directory>
<!-- 是否替换@xx@表示的maven properties属性值 -->
<filtering>true</filtering>
<includes>
<include>application.yml</include>
<include>application-${profileActive}.yml</include>
</includes>
</resource>
</resources>
</build>
复制
配置文件
多环境配置文件相关文件为:
- application.yml 默认配置文件,需要通过此文件去引用其他配置文件
- application-dev.yml 开发环境
- application-pro.yml 生产环境
- application-test.yml 测试环境
application.yml配置
spring:
profiles:
active: '@profileActive@'
复制
然后根据需要,新增application-dev.yml,application-pro.yml即可

在IDEA中,点击刷新即可选择编译环境:

mvn打包命令
打包命令
mvn clean install package -P pro -Dmaven.test.skip=true
mvn clean install package -P dev -Dmaven.test.skip=true
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)