• 作者:老汪软件技巧
  • 发表时间:2024-09-03 04:01
  • 浏览量:

HotSeconds简介

HotSeconds 是一个为 Java 开发者设计的热部署工具,旨在提升开发效率。在开发过程中,开发者常常需要面对频繁的代码修改、编译和应用重启,这一系列操作可能会消耗大量时间。HotSeconds 的目标就是解决这个问题,它能够在不重启整个应用程序的情况下,将代码更改实时反映到运行中的应用中,即实现了所谓的“热部署”。

HotSeconds 包含客户端(HotSecondsClient)和服务器端(HotSecondsServer)两部分,通过两者之间的协作,可以实现在集成开发环境(IDE)中修改的代码被自动检测并更新到正在运行的应用中,从而使得开发者无需手动停止和重启应用即可看到代码改动的效果。

对于使用 IntelliJ IDEA 这样的 IDE 进行本地开发的 Java 程序员来说,HotSeconds 提供了一键化的热部署解决方案,极大地减少了等待编译和重启所花费的时间,进而提高了开发效率。此外,HotSeconds 也支持远程热部署,这意味着它不仅适用于本地开发环境,还能用于远程服务器上的应用更新。

环境准备

1.目前JDK支持1.8、11和17版本,本文以JDK1.8.0_181为例讲解,其他JDK类似。

2.dcevm下载JDK对应版本的补丁,看看自己的JDK版本,和补丁要求的版本保持一致,建议用JDK1.8.0_181

下载下来之后,运行这个jar进行安装,选择你的jdk版本,然后再选择Install DCEVM as altjvm

3.配置好JAVA_HOME,并java -version验证

4.以管理员身份运行,安装完之后,输入java -XXaltjvm=dcevm -version,得到下图结果说明是安装成功了

HotSeconds本地安装

必须服务端和客户端(IDE插件)同时存在

本地热部署服务端安装

下载HotSecondsServer.zip解压到本地下载地址:/Liubsyy/Hot…

客户端安装(Intellij IDEA 插件)

安装完成后并重新启动开发工具。重启后会发现多了三个图标。

修改配置

热部署在开源项目ruoyi-cloud中实践

需求:1.修改xml和java文件实现热部署,这里修改岗位管理的```SysPostMapper.xml修改列表查询,实现按修改时间倒序排列岗位列表

2.修改:SysPostController.java文件,在列表中打印日志

配置RuoYiSystemApplication

加入JVM参数

-XXaltjvm=dcevm -javaagent:F:/javaee/HotSecondsServer7.1/HotSecondsServer.jar=hotconf=F:/javaee/HotSecondsServer7.1/hot-seconds-remote.xml

正常启动各服务,ruoyi-cloud至少要启动红色框线中的三个服务

RuoYiAuthApplication、RuoYiGatewayApplication和RuoYiSystemApplication目前只在RuoYiSystemApplication中加入了热部署

RuoYiSystemApplication启动后,会发现日志中多了热部署相关的日志

开启热部署

我们现在修改SysPostMapper.xml,加入排序

右键

提示热部署成功。

我们登录系统,验证是否达到预期:(创建时间和修改时间都可以)

继续修改SysPostController.java文件,加入日志段。

右键

正常热部署

预期结果:

HotSeconds文档参照

HotSeconds官方文档 /Liubsyy/Hot…

热部署插件HotSeconds安装教程(萌新版) /post/732537…