SpringBoot多环境开发控制

举报
兮动人 发表于 2022/05/26 15:42:22 2022/05/26
【摘要】 多环境开发控制maven和SpringBoot同时设置多环境以哪个为主?要想处理这个冲突问题,你要先理清一个关系,究竟谁在多环境开发中其主导地位。也就是说如果现在都设置了多环境,谁的应该是保留下来的,另一个应该遵从相同的设置。maven是做什么的?项目构建管理的,最终生成代码包的,SpringBoot是干什么的?简化开发的。简化,又不是其主导作用。最终还是要靠maven来管理整个工程,所以...

多环境开发控制

  • maven和SpringBoot同时设置多环境以哪个为主?

  • 要想处理这个冲突问题,你要先理清一个关系,究竟谁在多环境开发中其主导地位。也就是说如果现在都设置了多环境,谁的应该是保留下来的,另一个应该遵从相同的设置。

  • maven是做什么的?项目构建管理的,最终生成代码包的,SpringBoot是干什么的?简化开发的。简化,又不是其主导作用。最终还是要靠maven来管理整个工程,所以SpringBoot应该听maven的。

  • 当maven和springboot环境产生冲突的时候,应该让boot使用maven中的环境

大体思想如下:

  • 先在maven环境中设置用什么具体的环境
  • 在SpringBoot中读取maven设置的环境即可
  1. Maven中设置多环境属性
<!--设置多环境-->
<profiles>
    <profile>
        <id>env_dev</id>
        <properties>
                <profile.active>dev</profile.active>
        </properties>
        <!--设置默认启动该环境-->
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
    </profile>
    <profile>
        <id>env_pro</id>
        <properties>
            <profile.active>pro</profile.active>
        </properties>
    </profile>
</profiles>
  1. SpringBoot中引用Maven属性
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  1. 执行Maven打包指令,并在生成的boot打包文件.jar文件中查看对应信息
  • 把项目打包后,用压缩软件打开查看该 jar 包中的配置文件属性
    在这里插入图片描述

  • 可以看到配置的就是pom中设置的默认启动的 dev 环境

小节:

  1. 当Maven与SpringBoot同时对多环境进行控制时,以Mavn为主,SpringBoot使用@..@占位符读取Maven对应的配置属性值
  2. 基于SpringBoot读取Maven配置属性的前提下,如果在Idea下测试 工程时pom.xml每次更新需要手动compile方可生效
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。