SpringCloud配置中心使用多环境profile配置(maven版)

本文通过maven打包的方式实现“SpringCloud配置中心使用多环境profile配置”。

如果希望通过更精简启动命令的方式切换springcloud环境,可参考我的另一篇文章:SpringCloud配置中心使用多环境profile配置_胡海超的博客-CSDN博客说明由于springcloud配置中心和springboot的多环境配置并没有打通,所以使用java -jar xxxx.jar --spring.profiles.active=prod命令只能对springboot项目中的配置有效,并不能从配置中心获取不同的环境配置,想要实现目标还需要多做一些工作。项目配置在bootstrap.yml文件中配置配置中心,如下所示使用三个...https://blog.csdn.net/u011936655/article/details/86175439

 1 设置maven打包方式

1.1 修改maven打包配置

打开pom.xml并添加以下内容

<profiles>
    <profile>
      <!--开发环境-->
      <id>dev</id>
      <properties>
        <dev.environment>dev</dev.environment>
      </properties>
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
    </profile>
     <profile>
      <!--生产环境-->
      <id>test</id>
      <properties>
        <dev.environment>test</dev.environment>
      </properties>
    </profile>
    <profile>
      <!--生产环境-->
      <id>prod</id>
      <properties>
        <dev.environment>prod</dev.environment>
      </properties>
    </profile>
  </profiles>


  <build>             
    <resources>  
        <resource>  
            <directory>src/main/resources</directory>  
            <!-- 跳过目录 -->
            <excludes>  
                <exclude>dev/*</exclude>    
                <exclude>test/*</exclude>    
                <exclude>prod/*</exclude>    
            </excludes>  
        </resource>  
        <resource>  
            <directory>src/main/resources/${dev.environment}</directory>  
            <targetPath>WEB-INF/classes</targetPath> 
        </resource>  
    </resources>  
</build>  

1.2 添加不同profile对应的文件夹

在resources目录下分别建立dev、test、prod文件夹

src/main/resources/dev

src/main/resources/test

src/main/resources/prod

2  在不同环境目录下,分别添加不同环境springcloud配置

 2.1 dev环境

resources/dev/application.yaml

spring:
  cloud:
    bootstrap:
      enabled: false
    config:
      uri: http://localhost:8888
      name: webclient
      profile: dev

 2.2 test环境

resources/test/application.yaml

spring:
  cloud:
    bootstrap:
      enabled: false
    config:
      uri: http://localhost:8888
      name: webclient
      profile: test

 2.3 prod环境

resources/prod/application.yaml

spring:
  cloud:
    bootstrap:
      enabled: false
    config:
      uri: http://localhost:8888
      name: webclient
      profile: prod

3 通过maven打包使用不同切换不同环境

mvn clean package -Pdev -Dmaven.test.skip=true
mvn clean package -Ptest -Dmaven.test.skip=true
mvn clean package -Pprod -Dmaven.test.skip=true

通过maven打包后的jar包已经只包含指定环境的配置,通过java命令直接启动即可

java -jar xxxx.jar 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员阿超的博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值