Spring Boot的Profile切换方式
来源:互联网 发布:朝鲜第五次核试验 知乎 编辑:程序博客网 时间:2024/06/05 14:13
引言: Spring Boot是Spring社区基于之前的技术积累,而开发出来的一套快速开发框架,针对不同的profile来如何切换呢?这个和之前的mvn方式有所区别。
1. 基于maven管理的Spring项目的启动和切换方式
>> mvn clean package -P profileName #### mvn clean package -Dprofile=profileName
基于指定的profileName来进行打包,一般profile之间的不同配置信息是放置于pom.xml之中,在打包过程中,实现文件信息和内容的替换。
>> mvn tomcat8:run # mvn tomcat8:deploy, mvn tomcat8:undeploy
基于tomcat8来进行包的部署以及卸载, tomcat服务器的启动
2. 基于Spring Boot来启动项目
>>> mvnw spring-boot:run #启动Spring boot项目
>>> java -jar xxxx.war # 直接启动Spring Boot项目
不过这里的war包需要经过Spring boot的打包方式,并配置特定的依赖包, 在pom.xml中需要配置一下信息:
<packaging>war</packaging>添加tomcat的支持包:
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId><scope>provided</scope> </dependency>这些打包出来的文件夹中就出现了一个lib-provided的目录:
大家可以看到,lib-provided中存放的内容,基本上就是tomcat本身的依赖包,其余的还有一些websocket的jar包。
3. 如何在启动Spring boot应用过程中,切换profiles?
>>> java -Dspring.profiles.active=profileName -jar targetfile.war
在启动中,指定需要使用的profile name,直接进行启动
>>> mvnw spring-boot:run -Drun.profiles=profileName,profileName2
使用 spring-boot:run基于maven的来启动
>>> 直接打包没有lib-provided目录的版本,在catalina.properties中指定所需的active profile
echo spring.profiles.active=container >> catalina.properties
说明一下:spring-boot:run后面可以输入的参数和-D的参数不同,这个取决于其maven plugin的支持参数。
详细的参数信息,可以参照地址: http://docs.spring.io/spring-boot/docs/current/maven-plugin/index.html
4. 总结
Spring Boot做为一个新的开发和组织方式,还是需要一点时间来继续研究的,总体而言,其开发效率还是非常高的。
- Spring Boot的Profile切换方式
- spring-boot使用profile环境切换
- 06-maven的profile和Spring boot 的profile整合
- Spring Boot 03 profile的使用
- spring profile多配置文件的切换
- Spring Boot Profile使用
- Spring Boot Profile 配置
- spring boot的发布方式
- Spring Boot Profile配置实例
- spring boot集成maven profile
- 集成maven和Spring boot的profile功能
- Maven与Spring Boot的profile功能集成
- Spring-Boot使用profile来配置不同环境的配置文件
- maven profile自动切换环境参数的两种实现方式
- 利用spring的profile切换不同的环境
- [Spring Boot 系列] 集成maven和Spring boot的profile功能
- [Spring Boot 系列] 集成maven和Spring boot的profile功能
- spring boot的quartz的配置方式
- 选择图片或拍照剪切后上传服务器
- 消息队列(Message Queue)简介及其使用
- 图的创建及深度搜索广度搜索等可运行
- 如何用segment实现选择栏
- Android_AsyncTask
- Spring Boot的Profile切换方式
- java中JFrame类的简介
- textarea:contenteditable模拟文本域-纯文本-chrome浏览器,其余不兼容
- caffe模型微调
- How to Build an High Availability MQTT Cluster for the Internet of Things
- 实现统一社会信用代码校验
- seajs模块的加载启动
- ubuntu1404 ssh
- PBOC/EMV之TLV编码与解码