SpringBoot项目在不同环境下的配置以及打包方式
一、概述
配置三个配置文件,只需要打包的时候,根据不同环境打包不同的配置文件
application.yml 是启动服务时,Spring会自动加载的配置文件
application-dev.yml 代表的是开发环境时的配置文件
application-test.yml 代表的是生产环境的配置文件

二、配置文件的加载设置
在服务启动时,Spring会自动加载application.yml,所以我们只需在这个配置文件中设置,需要哪个就加载哪个就好了。
在服务启动加载的时候,服务器就会加载application.yml文件,然后通过配置去调用application-dev.yml文件,加载开发环境配置。当active: test,那么服务在启动时,Spring就会调用application-test.yml文件,加载测试环境配置。
三、Maven不同环境的打包
进行动态的调用不同的配置文件,前提条件是拥有多个配置文件
首先来进行配置pom.xml
<profiles> <!--与build标签同级别,放在project标签中-->
<!--这是开发环境-->
<profile>
<id>dev</id>
<properties>
<!-- 环境标识,需要与配置文件的名称相对应 -->
<activatedEnv>dev</activatedEnv>
</properties>
<activation>
<!-- 默认环境 -->
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<!--这是测试环境-->
<profile>
<id>prod</id>
<properties>
<activatedEnv>prod</activatedEnv>
</properties>
</profile>
</profiles>
然后application.yml 配置动态的使用
spring:
profiles:
active: @activatedEnv@
@activatedEnv@ ,使用的就是我们在pom.xml里设置的<activatedEnv> ,当需要Maven打包时,就会用这个值
打包开发环境(删除原有的包,排除test文件夹的内容,使用开发环境配置打包):
mvn clean package -P dev -Dmaven.test.skip=true
打包测试环境:
mvn clean package -P test -Dmaven.test.skip=true
根据需要两者选其一吧,当然打包语句略有不同。
PS:转===》https://blog.csdn.net/m0_51295655/article/details/121779530
SpringBoot项目在不同环境下的配置以及打包方式的更多相关文章
- SpringBoot项目部署与服务配置
spring Boot 其默认是集成web容器的,启动方式由像普通Java程序一样,main函数入口启动.其内置Tomcat容器或Jetty容器,具体由配置来决定(默认Tomcat).当然你也可以将项 ...
- SpringBoot01 InteliJ IDEA安装、Maven配置、创建SpringBoot项目、yml属性配置、多环境配置、自定义properties配置
1 IntelliJ IDEA 安装 下载地址:点击前往 注意:需要下载专业版本的,注册码在网上随便搜一个就行啦 2 MAVEN工具的安装 2.1 获取安装包 下载地址:点击前往 2.2 安装过程 到 ...
- SpringBoot项目使用Nacos作为配置中心
前置条件:jdk.SpringBoot项目.Nacos.Linux服务器(可无) 具体版本:jdk11.SpringBoot 2.3.5.RELEASE.Nacos 2.0.3.Centos 6 目标 ...
- (四)创建基于maven的javaFX+springboot项目,用户界面与后台逻辑分离方式
下面来介绍创建maven的javaFX+springboot项目,基于用户界面与后天逻辑分离的方式,用户界面使用fxml文件来常见,类似于jsp,可以引入css文件修饰界面 maven依赖 <d ...
- 基于Maven的SpringBoot项目实现热部署的两种方式
转载:http://blog.csdn.net/tengxing007/article/details/72675168 前言 JRebel是JavaEE中比较流行的热部署插件,可快速实现热部署,节省 ...
- IDEA访问不到SpringBoot项目webapp下的内容
参考:https://blog.csdn.net/weixin_43105335/article/details/87863847 https://blog.csdn.net/qq_34797335/ ...
- SpringBoot项目eclipse运行正常maven install打包启动后报错ClassNotFoundException
parent的pom.xml <groupId>cn.licoy</groupId> <artifactId>parent</artifactId> & ...
- SpringBoot项目框架下ThreadPoolExecutor线程池+Queue缓冲队列实现高并发中进行下单业务
主要是自己在项目中(中小型项目) 有支付下单业务(只是办理VIP,没有涉及到商品库存),目前用户量还没有上来,目前没有出现问题,但是想到如果用户量变大,下单并发量变大,可能会出现一系列的问题,趁着空闲 ...
- IntelliJ IDEA(的springboot项目)环境准备(配置maven和jdk)
1.配置maven .使用自己电脑上装的maven版本,而非默认的.(方法一) (1)选择configure--Settings (2)搜索maven,配置3.6.2版本的maven.注意:将mave ...
- maven在windows10系统下安装配置和打包war
maven下载地址:http://maven.apache.org/ 下载完成解压到 D盘 目录下D:\apache-maven-3.5.0\bin 配置maven环境变量: M2_HOME D: ...
随机推荐
- 常见php正则表达式
$str=preg_replace("/\s+/", " ", $str); //过滤多余回车 $str=preg_replace("/<[ ] ...
- Server-sent-events与 WebSocket的区别是什么?
SSE 与 WebSocket 作用相似,都是建立浏览器与服务器之间的通信渠道,然后服务器向浏览器推送信息.总体来说,WebSocket更强大和灵活.因为它是全双工通道,可以双向通信:SSE是单向通道 ...
- C# HttpListener 的使用方法
关于监听回调两次的原因,可能是因为重新监听导致的,所以查到微软上面的解析是说 BeginGetContext方法开始异步 (非阻塞) 调用以接收传入的客户端请求. 在调用此方法之前,必须调用 Star ...
- 使用plsql导入的操作问题
导入文件之前要创建表空间等操作,如下: 1. sql文件导入的是用户对象 2. pde文件导入的是表和数据 sql文件使用sql插入的方式导入 pde文件使用以下方式导入
- java有关正则表达式的工具方法集合1
1.获取某字符串中汉字的个数 1 ... 2 private int getChineseCount(String text) { 3 String Reg = "^[\u4e00-\u9f ...
- 从 Tableau文件中获取数据方法汇总
↓↓↓欢迎关注我的公众号,在这里有数据相关技术经验的优质原创文章↓↓↓ 在实际使用Tableau中经常会遇到需要从已有的tableau文件或仪表板中导出/提取/复制数据,本篇文章整理了相关从Table ...
- jenkins部署github项目
过程和gitee+jekins配置一样 方式1:使用ssh方式 jekins配置给github的认证信息 采取ssh方式,即需要提前将Jenkins本机的key添加到Gitlab上 先配置好ssh证书 ...
- win11专业版打开安全中心变成应用商店的问题
有一位雨林木风官网的小伙伴,反馈这么一个问题,当他用win11专业版系统的时候,点击安全中心时,会有提示要求您启动应用商店,不知道是哪里出了问题!面对这个问题,很多人不知道如何解决.然后本期win11 ...
- 关于SqlSugar并发情况下的问题(排坑)
有一个vue3的项目,前端去调用后台的接口,后台接口和数据库交互是用SqlSugar来做的: 如图,在页面挂载以后去从后台获取数据,这里虽然是两个异步接口,但是使用同步的方式去获取的. 后台sqlsu ...
- CloudQuery v1.3.7版本更新,新增「导出限制」
Hello,社区的小伙伴们!我们又见面啦! 五一假期将至,我们来给大家献上劳动节大礼,CloudQuery v1.3.7~ 图片图片 本次更新内容不多,但分量十足,可以说是众望所归.人心所向! 之前大 ...