基于Maven的SpringBoot项目实现热部署的两种方式
来源:互联网 发布:java语言pdf 编辑:程序博客网 时间:2024/06/06 00:44
前言
JRebel是JavaEE中比较流行的热部署插件,可快速实现热部署,节省了大量重启时间,提高了个人开发效率。看一张图就知道了:
我这里提到JRebel的目的主要是说明热部署工具带来的优势:节省时间,提高开发效率
下面我将介绍使用maven构建的SpringBoot项目中实现热部署的两种方式,使得部署变得异常简单,同时两种方式也非常的简单。
热部署
devtools
Pom.xml中直接添加依赖即可:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>provided</scope> <!--optional我没弄明白,都说必须为true,但我测试true,false,不加都可以--> <optional>true</optional> </dependency>
通过项目主程序入口启动即可,改动以后重新编译就好。
springloaded
Pom.xml中直接在spring-boot插件中添加依赖即可:
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <dependencies> <!-- spring热部署 --> <dependency> <groupId>org.springframework</groupId> <artifactId>springloaded</artifactId> <version>1.2.6.RELEASE</version> </dependency> </dependencies> <configuration> <mainClass>cn.springboot.Mainspringboot</mainClass> </configuration> </plugin>
运行:
$ mvn clean spring-boot:run
改动后,编译即可实现热部署
结束语
这两种方式其实都是spring官网为了spring项目所推出的jar包,加之springBoot框架内嵌服务器的优势,使得改动后的项目部署变得非常简单;当我使用以后这两种方法以后,发现真正实现热部署的只是后者,前者只是实现了热启动而已,从控制台日志就可以看出来。
说明
- 项目使用maven管理,不然这篇简单实用的文章不适合你
- 第一种方式配置文件改动后不能触发热启动
- 第二种方式配置文件改动后不能触发热部署,会提示一下错误
2017-05-24 11:54:53.276 ERROR 12063 --- [Loader@18b4aac2] org.springsource.loaded.ReloadableType : Unable to find regeneration methods for cglib proxies - proxies will be out of date for this type
- 1
- 由于使用IDE的不同,编译快捷键也可能不同,笔者实用intellij idea ,对应快捷键 Ctrl+Shift+F9,也可以设置自动编译(见这篇文章),eclipse 没记错的话是默认自动编译
参考文章
- http://www.cnblogs.com/java-zhao/p/5502398.html
- http://blog.csdn.net/u014695188/article/details/52262146
阅读全文
0 0
- 基于Maven的SpringBoot项目实现热部署的两种方式
- 基于Maven的SpringBoot项目实现热部署的两种方式
- 基于Maven的SpringBoot项目实现热部署的两种方式
- Springboot 热部署的两种方式
- Springboot 热部署的两种方式
- SpringBoot之——热部署的两种方式
- SpringBoot项目热部署的实现
- JavaWeb日记——Springboot 热部署的两种方式
- SpringBoot的热部署
- 使用Maven+Tomcat实现项目的热部署
- Eclipse+Maven+Tomcat+JRebel实现项目的热部署
- SpringBoot-热部署-maven
- SpringBoot 热部署方式
- springBoot工程的热部署
- maven实现tomcat的热部署。
- Maven的热部署
- Maven的热部署
- Maven的热部署
- javaWeb项目中,web.xml的配置有什么?
- 机器学习 学习记录(三)
- 扎克伯格2015年度阅读书单(22本)[转]
- maven 打包代码
- css平方米
- 基于Maven的SpringBoot项目实现热部署的两种方式
- 字母塔
- 移植u-boot之修改代码
- 关于Andriod Studio 2.3 无法使用自定义字体的问题
- Thymeleaf
- array_walk,array_map,SQL注入,range()
- 阿里云服务器ssh经常掉线的解决办法
- 【转】DBMS_STATS.GATHER_TABLE_STATS详解
- 基于Spark Mllib的文本分类