IDEA 2018.3版本Spring Boot 热部署

看了B站尚硅谷的"尚硅谷SpringCloud框架开发教程(SpringCloudAlibaba微服务分布式架构丨Spring Cloud)"视频的P11,讲热部署,分如下5个步骤:

刚好现在我觉得每次改了代码,要用POSTMAN测试的时候,每次都要重启项目,重启一次耗时大概1分钟左右感觉很慢,所以我尝试了一下:


我的按照老师的步骤,注意第5步有点点不一样;就是版本号,应该没啥大问题;
也确实成功了,但是我发现这不是我想要的"热部署",这devTools只是帮我重启快了一点,我觉得应该不能叫热部署,应该叫热重启;
从控制台输出的这句可以反推推测一下
Started MyApplication in 58.921 seconds (JVM running for 63.162)
当我修改了代码,它会自动帮我重启一下项目:

重启耗时好像变少了一些, JVM running for 数字 ,这个数字越来越大, 可以推测是JVM一直在运行,是热重启,不再是冷重启,所以可能会快一点;
但是我想要的效果不是这样的,我期望我改了代码以后,不用重启就能够更新接口的结果;
于是,又找,找到IDEA 自带的 HotSwap 的帖子
IDEA + Spring Boot 的三种热加载方案,看完弄懂,不用加班~
https://cloud.tencent.com/developer/article/1683029

在这里我总结为以下几步:
1.在Settings里

2.Edit Configurations…

进入以后,选好是哪个微服务
选Update classes and resources


3.然后以Debug运行
这样就可以实现热部署了;

4.修改代码以后,鼠标移到IDEA软件框的外面, 让IDEA失去鼠标的焦点,IDEA就会开始编译,编译完成就会提示如下:有1个类被重新加载

这样速度更快,不需要重启SpringBoot;
我更愿意称这样的HotSwap为热部署, 称用devTools为热重启;

在按尝试尚硅谷视频教程的时候按了快捷键
Ctrl + ALT + Shift + /

Ctrl + Shift + ALT + /
都可以

打开的Registry窗口的key我看不懂,鼠标选中后下面的框会有描述

如果想看所有描述有地址: Registry描述
https://github.com/jskierbi/intellij-ce-playground/blob/master/platform/util/resources/misc/registry.properties

HotSwap也不是每次都会成功,如果代码有bug,编译器通不过也会在编译时提示出来;
我这里把一个Controller的映射和方法全删了,也failed了

我放置这个问题在那, 并没有处理,然后过一会,用POSTMAN请求,还是能请求到原来那个映射地址;此时再把鼠标移到IDEA外面去,它又是绿的;显示没有类被改变;这样会显得有点诡异,代码里已经删了的映射,还能请求到;这里要注意避免这个坑!

这个时候重启一下项目比较好!

IDEA 2018.3版本Spring Boot 热部署相关推荐

  1. Spring Boot 热部署入门

    转载自  Spring Boot 热部署入门 1. 概述 在日常开发中,我们需要经常修改 Java 代码,手动重启项目,查看修改后的效果.如果在项目小时,重启速度比较快,等待的时间是较短的.但是随着项 ...

  2. Spring Boot热部署

    Spring Boot热部署 在SpringBoot中启用热部署非常简单,因为SpringBoot提供了一个非常方便的工具spring-boot-devtools,只需把这个工具引入到项目里即可. 1 ...

  3. 芋道 Spring Boot 热部署入门

    点击上方"芋道源码",选择"设为星标" 做积极的人,而不是积极废人! 源码精品专栏 原创 | Java 2020 超神之路,很肝~ 中文详细注释的开源项目 RP ...

  4. Spring boot热部署的作用和原理

    Spring boot热部署的作用和原理 前言 一.Spring boot热部署的作用 1.什么是SpringBoot热部署 2.什么项目重启 3.什么静态文件 4.如何使用Spring boot热部 ...

  5. Spring Boot 热部署(热加载)

    idea 热部署作用:自动帮开发者重启 spring boot 项目,从而达到修改代码之后能够"实时"的看到最新的效果 1.添加热部署框架支持 <dependency> ...

  6. Spring Boot 热部署

    三种热部署方式 1:spring-boot-devtools  2:Spring Loaded  比较繁琐 3:Jrebel  JRebel是一款收费的服务,可以通过官网进行激活码购买. 因此主要采用 ...

  7. SpringBoot资料合集-03【Spring Boot 热部署与日志】

    1.springboot中devtools热部署 2.带你弄清混乱的JAVA日志体系! 3. logback日志的集成 1.springboot中devtools热部署 1.1 引言 为了进一步提高开 ...

  8. 第二篇:Spring Boot 热部署

    文章目录 1. 依赖 2. 开启实时自动编译 3. 开启运行自动编译开关 1. 依赖 <!-- 热部署DevTools --><dependency><groupId&g ...

  9. Spring Boot 热部署 devtools模块

    devtools模块详解 devtools模块,是为开发者服务的一个模块.主要的功能就是代码修改后一般在5秒之内就会自动重新加载至服务器,相当于restart成功. 简单原理 在发现代码有更改之后,自 ...

最新文章

  1. Ajax实现无刷新三联动下拉框
  2. 地球是否健康,最新“诊断报告”来了
  3. c语言基础变量,C语言基础-第一篇-变量
  4. [NOI2007]货币兑换Cash(DP+动态凸包)
  5. java图像处理之查找表实现图像处理加速
  6. 怎么做mysql查询系统_mysql数据库系统学习(一)---一条SQL查询语句是如何执行的?...
  7. LeetCode 6071. 完成所有任务需要的最少轮数
  8. 三角形面积 java_java编程中求三角形面积肿么写?
  9. Hello Rails
  10. Mac otool替代readelf命令
  11. 数据结构--栈和队列记事本
  12. 计算机考试spss数据分析,基于SPSS的数据分析
  13. 使用JS读取本地文件
  14. 安装linux出现分区出错,找到了linux分区顺序错乱修复方法
  15. Excel在统计分析中的应用—第十章—方差分析-方差分析表
  16. 自定义input单选框样式
  17. EZchip花1.3亿美元买Tilera然后以8亿美元把自己与Tilera一起卖掉
  18. DP(Nietzsche)的hu测 T2(dp)
  19. 微信小程序云开发使用mysql数据库
  20. gamemaker学习笔记:跳跃

热门文章

  1. 项目中对微信昵称特殊字符的处理
  2. 开源工具 | 手游自动化框架GAutomator,新增iOS系统和UE4引擎支
  3. WiFi 基础(四)—— 连接过程
  4. 【论文笔记09】Differentially Private Hypothesis Transfer Learning 差分隐私迁移学习模型, ECMLPKDD 2018
  5. Unity3D自学笔记
  6. 2022年8月最新运维面试题-服务器上下架流程
  7. FineReport html5图表简介
  8. 办公软件测试题目,Office高级办公软件测试(附答案)
  9. 谷歌地图(Google Maps)接入基础篇
  10. [附源码]Nodejs计算机毕业设计面向老年群体的健康养生系统Express(程序+LW)