Idea之热部署插件JRebel+XRebel

热部署:就是在修改代码之后,不用重新启动项目,即可自动编译,应用最新修改的代码

使用Idea编写SpringBoot项目,实现热部署功能有两种方式

  • 引入依赖spring-boot-devtools来实现springboot的自动热部署
  • 使用Idea插件Jrebel and XRebel for IntelliJ来实现热部署

1. devtools热部署

1. 使用流程

引入依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <optional>true</optional>
</dependency>

yml文件中开启devtools,默认开启

#  devtools
spring:
  devtools:
    restart:
      enabled: true  #设置开启热部署

2. 缺点

devtools 是检测代码变动,重新编译,来进行热部署。因为eclipse是手动保存,所以会再保存时触发热部署,但是idea是自动保存,所以不能保存自动热部署,所以devtools的缺点就是热部署速度特别慢。当然也可以开启自动编译,但是不推荐,你想想,如果敲一个字母,就保存一次,紧接着就重新编译一次,那岂不是很恐怖,会造成电脑卡顿。

2. Jrebel and XRebel for IntelliJ

这个插件包含两部分功能,JrebelXRebel

  • Jrebel 用于热部署,更新速度快,生效速度快
  • XRebel 用于显示接口访问速度和访问期间sql的拦截,监控,sql执行时间统计,展示

功能强大,推荐使用

1. 安装

File – settings – Plugins – Jrebel and XRebel for IntelliJ下载安装

image-20210730154934833

2. 激活JRebel-方式一

重启Idea之后,会弹出JRebel setup guide页面,点击JRebel Activation

image-20210730155411921

GUID生成:https://www.guidgen.com/

激活URL : https://jrebel.qekang.com/GUID

点击第一个网页,会生成一个GUID,复制,替换第二个链接的GUID

例如第一个网页生成GUID: 538203f8-0673-4caa-b6cf-3e700864bf8e

拼接完之后为:https://jrebel.qekang.com/538203f8-0673-4caa-b6cf-3e700864bf8e

在弹出页面填写信息

image-20210730155657808

之后就激活成功,可以使用了

3. 激活JRebel方式二

自己下载代理工具进行激活

  1. 下载代理工具(适合自己系统的工具)

    下载地址:Releases · ilanyu/ReverseProxy (github.com)

  2. 双击启动工具

    image-20230220221923701

  3. 生成GUID

    Generate GUIDs online (guidgen.com)

  4. 录入激活信息

    本机ip加上GUID

    image-20230220222114569

  5. 设置工具为离线使用,即可关闭代理工具

    file – settings

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WpL6o63l-1676903249157)(http://www.sea-clouds.cn:9000/markdown/2023/02/20/image-20230220222154195.png)]

4. 使用JRebel

修改启动器配置为更新类和资源

image-20210730155951561

使用JRebel+XRebel启动

image-20210730161247868

5. 使用XRebel

你的后端请求地址后面拼接xrebel,即可进入XRebel控制台,可以显示借口响应信息,sql执行时间等等

如果提示没有激活,按照上述JRebel的方式激活,一模一样

eg: http://localhost:9001/xrebel

image-20210730161546613

image-20210730161554738

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐