Spring Boot 实现多环境下配置切换和打包的三种方式

首先,创建不同环境的application.yml

方式一:在Maven中指定环境打包

1.在application.yml文件中添加如下配置:

# 指定执行环境
spring:
  profiles:
    active: @package.environment@

2.pom.xml配置:

2.1添加profile

<profiles>
    <profile>
        <id>dev</id>
        <properties>
            <package.environment>dev</package.environment>
        </properties>
        <!-- 是否默认 true表示默认-->
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
    </profile>

    <profile>
        <id>test</id>
        <properties>
            <package.environment>test</package.environment>
        </properties>
    </profile>

    <profile>
        <!-- 生产环境 -->
        <id>prod</id>
        <properties>
            <package.environment>prod</package.environment>
        </properties>
    </profile>
</profiles>

2.2 添加resource

<build>
    ...
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
            <includes>
                <include>application.yml</include>
                <include>application-${package.environment}.yml</include>
                <include>**/*.xml</include>
            </includes>
        </resource>
    </resources>
    ...
</build>

效果如图:

可以选中指定环境进行打包,如果不选,使用默认的application.yml环境。

方式二:在yml里指定环境打包

在默认的 application.yml下,指定环境,打包运行即可。

spring:
  profiles:
    active: dev

方式三:命令行控制加载环境

在默认的 application.yml下,默认加载开发环境,直接打包。

spring:
  profiles:
    active: dev

通过命令行 --spring.profiles.active=xxx 来控制加载哪个环境的配置来运行jar包

java -jar xxx.jar --spring.profiles.active=test 表示使用测试环境的配置
java -jar xxx.jar --spring.profiles.active=prod 表示使用生产环境的配置

在控制台有提示如:

2019-07-25 16:49:08.804  INFO 12512 --- [           main] c.l.springsecurity.demo.DemoApplication  : The following profiles are ac

tive: test

表示切换到测试环境的配置

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值