springboot 热部署没用_SpringBoot实现热部署(修改java文件和html文件不需要重启)

c582e789b6b4f0435fde9a442c2ce7dc.png与文章无关

热部署:

devtools可以实现页面热部署(即页面修改后会立即生效,

这个可以直接在application.properties文件中配置spring.thymeleaf.cache=false来实现)

实现类文件热部署(类文件修改后不会立即生效),实现对属性文件的热部署。

注意:因为采用的虚拟机机制,该项重启是很快的

(1)base classloader (Base类加载器):加载不改变的Class,例如:第三方提供的jar包。

(2)restart classloader (Restart类加载器):加载正在开发的Class。

为什么启动很快,因为重启的时候只是加载了在开发的Class,没用重新加载第三方的jar包。

1.使用方法:只需要在pom中加入如下依赖即可:

2.修改application.properties

org.springframework.boot

spring-boot-devtools

1.5.6.RELEASE

true

org.springframework.boot

spring-boot-maven-plugin

true

org.springframework

springloaded

1.2.6.RELEASE

#关闭缓存,即时刷新

#spring.freemaker.cashe=false

spring.thymeleaf.cache=false

#热部署生效

spring.devtools.restart.enable=true

#设置重启的目录,添加那个目录的文件需要restart

spring.devtools.restart.additional-paths=src/main/java

#为mybatis设置,生产环境可删除

#restart.include.mapper=/mapper-[\w-\.]+jar

#restart.include.pagehelper=/pagehelper-[\w-\.]+jar

#排除那个目录的文件不需要restart

#spring.devtools.restart.exclude=static/**,public/**

#classpath目录下的WEB-INF文件夹内容修改不重启

#spring.devtools.restart.exclude=WEB-INF/**

加完以上部分后,启动程序后,会发现并未生效,我们还得去配置下idea设置他为自动编译,因为idea编辑器本身默认是不自动编译的。

首先我们找到iead设置菜单(File--->settings--->Compiler----->Build project automatically)将此选择框勾选

17-1024x612.jpg

设置完上步骤后,再使用快捷键ctrl+shift+alt+/ 弹出框,选择"register",然后再选择红色内容,保存生效,所有操作完成后,再重启程序,这时修改class文件,编辑器会自动重启,修改静态资源文件,系统不会重启,但是刷新后立即生效。

222.jpg

分享到:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值