普元EOS-利用热更新(热启动)提高开发效率

1 简介

在程序开发的时候,需要频繁的重启项目,随着项目复杂度增加,项目启动时间会越来越长。那么每次修改一点内容就重启项目,会极大影响开发效率。

EOS提供了热更新的手段,代码修改后无须重启,自动生效的手段。

2 配置热更新

在项目的sys-config.xml文件中,修改 Runtime -> Monitor -> Interval 的值为3 ,即每3秒检查一次程序是否更新了,如果检查到代码发生了更新,就热更新,让新代码生效。

3 Exclude标签

在 Monitor下还有一个 Exclude 标签,默认是 class 。

这个标签标识哪些文件的修改不检查。

注释部分解释了资源热更新配置的含义:

  1. 资源热更新配置 (Resource Hot Update Configuration):
    • Interval : 指定扫描资源更新的间隔时间。如果设为负值(如 <0),则表示不进行扫描。比如,如果设置为 3,则表示每 3 秒扫描一次资源更新。
    • Exclude : 用于忽略特定文件或目录,防止它们被扫描更新。这个参数有三种配置方式:
      1. 忽略文件 :指定文件类型来忽略。例如,*.ext 忽略所有以 .ext 结尾的文件,多种类型用 | 分隔。例如,*.class|*.properties 忽略 .class.properties 文件。
      2. 忽略目录 :指定目录来忽略。例如,classes 忽略名为 classes 的目录,多目录用 | 分隔,但不支持忽略子目录。
      3. 混合配置 :同时忽略文件和目录。例如,*.class|classes 忽略 .class 文件和 classes 目录。

配置部分(<group name="Monitor">

这个部分定义了实际的资源热更新配置:

  • Interval : 这里配置的 Interval3,意味着每 3 秒会扫描一次资源更新。
  • Exclude : 这里的 Exclude 配置为空,意味着没有文件或目录被排除在扫描之外。

4 异常:错误的启动方式造成热更新不生效

有个需要注意的,项目启动方式一定要选择 debug ,否则是无法实现热更新的。

5 异常:白名单问题造成的热更新不生效

如果热更新不生效,还可以尝试这个方案。

在user-config.xml中,有一段是登录白名单的配置,在其中增加如下配置,debug方式重启项目,热更新应该生效了。

user-config.xml文件在

相关推荐
tkevinjd1 分钟前
JUC2(多线程中常用的成员方法)
java
天天摸鱼的java工程师6 分钟前
工作中 Java 程序员如何集成 AI?Spring AI、LangChain4j、JBoltAI 实战对比
java·后端
星辰_mya6 分钟前
RockerMQ之commitlog与consumequeue
java·开发语言
__万波__8 分钟前
二十三种设计模式(二十二)--策略模式
java·设计模式·策略模式
不想上班的小吕8 分钟前
采购申请创建(BAPI_PR_CREATE/BAPI_REQUISITION_CREATE)
java·服务器·数据库
专注VB编程开发20年11 分钟前
压栈顺序是反向(从右往左)的,但正因为是反向压栈,所以第一个参数反而离栈顶(ESP)最近。
java·开发语言·算法
椰汁菠萝12 分钟前
spring boot下使用gdal解析tif文件
java·native·gdal·0
better_liang12 分钟前
每日Java面试场景题知识点之-ELK日志分析
java·elk·微服务·面试题·日志分析·企业级开发
图南随笔16 分钟前
Spring Boot(二十三):RedisTemplate的Set和Sorted Set类型操作
java·spring boot·redis·后端·缓存
say_fall16 分钟前
C++ 类与对象易错点:初始化列表顺序 / 静态成员访问 / 隐式类型转换
android·java·开发语言·c++