Spring Boot热部署,帮你节省工时早下班

在开发过程中,当我们修改部分代码时,我们不得不重新启动应用程序,这极大地影响了工作效率。你能实时看到代码的修改效果吗?当然,这是热门部署。有很多方法可以部署Spring Boot,通常使用JRebel(带电的IDEA插件)和spring-boot-devtools

热部署的原理也很简单,就是对于ClassLoader,tomcat和spring-boot-devtools都是这样做的。当我编写ClassLoader文章时,我说通过更改WebApp ClassLoader来实现tomcat热部署。

Spring-boot-devtools使用两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载将要改变的类,称为重启ClassLoader,这样当代码发生变化时,将丢弃原始重新启动的ClassLoader,并重新创建重新启动的ClassLoader。由于要加载的类较少,因此可以实现更快的重启时间。

1.将以下依赖项添加到pom文件

\ torg.springframework.boot

\ tspring引导-devtools

如果您使用模板引擎,则需要关闭缓存

Spring.thymeleaf.cache=假

如果你正在使用eclipse,一切都很好。如果您使用的是Idea,则需要按如下方式配置

2.单击文件 - >设置 - >构建,执行,部署 - >依次编译,并自动检查Build project。

3.按快捷键Shift + Ctrl + Alt + /,单击“注册表”,然后选中compiler.automake.allow.when.app.running。

——