【Spring Boot实战与进阶】Spring Boot Devtools实现热部署 - Go语言中文社区

【Spring Boot实战与进阶】Spring Boot Devtools实现热部署


Spring Boot是很优秀的框架,它的出现简化了新Spring应用的初始搭建以及开发过程,大大减少了代码量,目前已被大多数企业认可和使用。这个专栏将对Spring Boot框架从浅入深,从实战到进阶,不但我们要懂得如何去使用,还要去剖析框架源码,学习其优秀的设计思想。

汇总目录链接:【Spring Boot实战与进阶】学习目录

一、简介

  在我们平时的日常开发工作中,修改了Java代码或者配置文件的时候,必须手动重启项目才能生效。
  所谓的热部署就是在你修改了后端代码后不需要手动重启,工具会帮你快速的自动重启使其生效。其深层原理是使用了两个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>
</dependency>

  optional=true,依赖不会传递, 该项目依赖devtools;之后依赖boot项目的项目如果想要使用devtools,需要重新引入。

2、IDEA配置

2.1、勾选自动编译
在这里插入图片描述
2.2、按组合键ctrl + shift + alt + /,然后选择Registry,勾上 Compiler.autoMake.allow.when.app.running。
在这里插入图片描述

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/sinat_27933301/article/details/103789218
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢