devtools模块,是为开发者服务的一个模块。主要的功能就是代码修改后通常在5秒以内就会自动从新加载至服务器,至关于restart成功。与JRebel不一样的是,JRebel是一款商业插件,devtools是免费的。html
devtools:是boot的一个热部署工具,当咱们修改了classpath下的文件(包括类文件、属性文件、页面等)时,会从新启动应用(因为其采用的双类加载器机制,这个启动会很是快,若是发现这个启动比较慢,能够选择使用jrebel) 双类加载器机制:boot使用了两个类加载器来实现重启(restart)机制:base类加载器(简称bc)+restart类加载器(简称rc)。 bc:用于加载不会改变的jar(eg.第三方依赖的jar) rc:用于加载咱们正在开发的jar(eg.整个项目里咱们本身编写的类)。当应用重启后,原先的rc被丢掉、从新new一个rc来加载这些修改过的东西,而bc却不须要动一下。这就是devtools重启速度快的缘由。java
在使用IDEA作SpringBoot的web项目的时候,在每一次修改了java文件或者是resource的时候,都必须去重启一下项目,这样的话浪费了不少的时间,那么,这个时候,就须要去实现程序的热部署,可以在修改了页面的时候可以立马刷新显现出新的效果。git
1.1 在设置中勾中Build project automatically
github
1.2 使用快捷键Ctrl + shift + alt + /,打开Maintenance操做面板,选择Registry,打开Registry操做面板web
1.3 找到并勾线"compiler.aut0make.allow.when.app.running",点击Close关闭操做面板。spring
1.4 启动应用,查看日志。springboot
1.5 更新某个类文件进行验证。服务器
如上图,spring-boot-devtools将会自动重启,留意观察控制台的日志。app
2.1 在谷歌商店添加LiveReload插件spring-boot
2.2 启动项目查看效果
2.3 更新以后效果
2.4 其余方式
关于热加载的方式,启动之后若是html有更新,直接F5刷新也是好使的。
https://github.com/toutouge/javademosecond/tree/master/hellospringboot
做 者:请叫我头头哥
出 处:http://www.cnblogs.com/toutou/
关于做者:专一于基础平台的项目开发。若有问题或建议,请多多赐教!
版权声明:本文版权归做者和博客园共有,欢迎转载,但未经做者赞成必须保留此段声明,且在文章页面明显位置给出原文连接。
特此声明:全部评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者直接私信我
声援博主:若是您以为文章对您有帮助,能够点击文章右下角【推荐】一下。您的鼓励是做者坚持原创和持续写做的最大动力!