SpringBoot 热部署 + IDEA

SpringBoot 热部署 + IDEA

1、使用Spring-Boot-Devtools实现热加载(这种方式会自动重启)

devtools的原理:

                       深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类,称为restart ClassLoader,这样在有代码更改的时候,原来的restart ClassLoader 被丢弃,重新创建   一个restart ClassLoader,由于需要加载的类相比较少,所以实现了较快的重启时间(并不是不需要重启,而是重启的时间很快,到了可以忽略的地步)。

实现:

1、加入依赖

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-devtools</artifactId>
	<optional>true</optional>
	<scope>true</scope>
</dependency>


2、设置IDEA

主要有两个地方的设置

   1)  “File” -> “Settings” -> “Build,Execution,Deplyment” -> “Compiler”,选中打勾 “Build project automatically”

image

   2) 组合键:“Shift+Ctrl+Alt+/” ,选择 “Registry” ,选中打勾 “compiler.automake.allow.when.app.running”    (这个是按照字母来排序的)

imageimage

OK,设置完成,直接启动即可



2、spring-loaded实现热加载(这种方式依赖本地jia包,但是中间修改之后没有重启的过程)

       1、下载本地springloaded  的jar包   至于版本在我做的时候选择jdk1.8  + 1.2.6.RELEASE  出现了问题,似乎是由于1.8 Lambda表达式引起的问题,具体没有深究,我换成了1.2.8.RELEASE   所以本例使用的是1.2.8

   下载地址附上http://central.maven.org/maven2/org/springframework/springloaded/1.2.8.RELEASE/springloaded-1.2.8.RELEASE.jar

      如果这个链接失效了,那就直接去maven仓库中找然后下载下来,放于本地磁盘

      2、启动设置

            在我们设置启动的时候添加一个参数即可


image


重点D:\Maven\springloaded-1.2.8.RELEASE.jar这个就是我们jar包所在的位置

  OK,完结,现在直接启动即可

image


示例:

imageimage

imageimage


在这期间没有重启项目哦~~~

posted @ 2018-12-25 02:54 SunArmy 阅读( ...) 评论( ...) 编辑 收藏
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值