当前位置: 首页 > news >正文

warm-flow 监听器对象获取问题

初次使用warm-flow 实现了 Listener 接口,配置名字和路径也有写对,但监听器一直没启动,查看底层代码
Listener listener = (Listener) FrameInvoker.getBean(clazz);

在要执行监听器时,一直获取不到对象,很疑惑,打印执行

String[] names = applicationContext.getBeanNamesForType(Listener.class);
System.out.println(Arrays.toString(names));
Class<?> clazz = ClassUtil.getClazz("com.ruoyi.office.listener.GradeLeaderLeaveStartListener");
Object bean = FrameInvoker.getBean(GradeLeaderLeaveStartListener.class);
Listener listener = (Listener)FrameInvoker.getBean(clazz);
System.out.println(clazz.getMethods());
System.out.println(listener);
System.out.println("FrameInvoker取到的Bean = " + bean);

一直取不到listener的值,但监听器对象已经成功注入容器了。那就是上下文加载的问题,排查良久发现 业务系统和热加载器不是同一个(热部署插件导致)
热部署插件jrebel或者devtools导致的问题,检查是否使用热部署插件,比如spring.devtools,加上配置spring-devtools.properties

restart.include.flow=/org.dromara.warm.*.jar

即可解决问题,该常见问题在官方亦有记载 
https://warm-flow.dromara.org/master/other/troubleshooting.html#_3%E3%80%81initflow-%E6%9C%AA%E5%8A%A0%E8%BD%BD
排查良久,看了N多底层代码,才发现问题 心有不甘,特意记载

http://www.rkmt.cn/news/9024.html

相关文章:

  • Hexo Butterfly 5.4 分页问题 YAML 错误 解决方法总结
  • 第十一届中国大学生程序设计竞赛网络预选赛(CCPC Online 2025)
  • 完整教程:数据结构 栈和队列、树
  • 酵母双杂交技术:高通量筛选的突破与不可忽视的三大局限性
  • ubuntu20.04测试cuda
  • Promise中处理请求超时问题
  • AI驱动建筑行业数字化转型
  • VSCode 把代码发送到激活状态下的终端
  • 线性结构之数组[基于郝斌课程]
  • 完整教程:Vue中的props方式
  • 完整教程:MySQL 存储过程完整实战手册---一篇吃透 Stored Procedure
  • 「MCOI-05」魔仙
  • BlueHat v18 会议资料现已发布:前沿安全技术与漏洞缓解策略
  • label和brand的区别(品牌=brand?错了,你们的英语都学错了!)
  • 读书笔记:更智能的数据库索引:只关注你需要的数据
  • 关于天猫精灵喵控的初步拆机研究
  • C++完全攻略:从新手到高手的编程进化之路 - 详解
  • Visual Studio 报错:“9_自定义命令”名称在默认命名空间“9_自定义命令”中无效。请更正项目文件中的 RootNamespace 标记值。
  • 图解23:datetime和timestamp的区别
  • 在Java中识别泛型信息
  • Kali Linux 光标与快捷键全攻略
  • Docker - ZZH Ubuntu Image - Desktop
  • 图解17:5中网络IO模型
  • 【session反序列化】 - 指南
  • 在k8s集群中解决master节点与node通信
  • PHP中常见数组操作函数
  • 修复Ubuntu系统文件损坏:手动fsck指令
  • window表现驱动开发—视频呈现网络简介
  • 一类特征方程在数列递推中的应用
  • 深入解析:GC 算法的种类及垃圾收集器