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

Spring Boot + LangChain4j 报错:Bean 类型不匹配的解决办法

在使用 Spring Boot + LangChain4j 开发 AI 应用时,在 Service 工厂中注入如下两个Bean:

@ResourceprivateStreamingChatModelopenAiStreamingChatModel;@ResourceprivateStreamingChatModelreasoningStreamingChatModel;

一切看起来都很合理,但启动时就报如下错误❌:

Bean named'openAiStreamingChatModel'is expected to be oftype'dev.langchain4j.model.chat.StreamingChatModel'but was actually oftype'dev.langchain4j.model.openai.OpenAiStreamingChatModel'

最诡异的是OpenAiStreamingChatModel明明是StreamingChatModel的子类,期望类型和实际类型“看起来完全兼容”,但还是报错!

原因分析

这个错误的根源,其实不是代码逻辑的问题,而是spring-boot-devtools的热部署机制导致的类加载冲突。

Spring Boot DevTools 为了实现快速重启,使用了两个类加载器。
一个是Base ClassLoader,主要负责加载Spring Boot 框架、第三方 jar(比如 langchain4j-core.jar);

另一个是Restart ClassLoader,主要负责加载自己的项目代码(比如src/main/java)。

默认情况下,DevTools 会把 所有非项目代码的 jar 放入 Base ClassLoader

但是!

LangChain4j 这类库,通过 Maven 引入,它其实是属于“第三方依赖”,理应由Base ClassLoader加载。

然而,在某些版本或配置下,DevTools 可能错误地将部分LangChain4j类交给了Restart ClassLoader

这样就造成同一个类,有两个身份,这样 JVM 认为这是两个完全无关的类。即使包名、类名、继承关系都对,也无法进行类型转换或赋值。

解决方案

1.在项目的如下目录中创建文件:

src/main/resources/META-INF/spring-devtools.properties

2.文件内容如下,主要目的是告诉 DevTools,这些 jar 属于基础类路径,统一用Base ClassLoader加载。

restart.include.langchain4j=/langchain4j-.*\.jar restart.include.openai=/openai-.*\.jar

3.重新运行,问题解决。

http://www.jsqmd.com/news/333434/

相关文章:

  • 我们的很多丿
  • 2026年净化工程企业排名公布,无尘净化工程哪家靠谱看这里 - 工业品牌热点
  • 2026环保板材品牌排名:绿色家居优选品牌推荐 - 品牌排行榜
  • 知道了吧台
  • 2026年LED透明屏批量定制选购指南,靠谱厂家有哪些 - mypinpai
  • 2026年 南通网站建设推荐榜单:企业网站定制、网站推广、SEO优化、品牌网站搭建与营销型网站设计开发服务深度解析 - 品牌企业推荐师(官方)
  • 知道了吗啡快
  • 2026板材品牌排行:环保与技术创新的行业标杆 - 品牌排行榜
  • 聊聊北京正规信用贷款公司找哪家,口碑好的怎么选? - 工业推荐榜
  • 知道了吧啦
  • React Native鸿蒙:Card卡片圆角样式
  • 成都恒利泰玻璃绝缘子破局探针台危机
  • 2026年健身器材厂家权威推荐:室内/户外/商用/校园/训练器材全品类及体育器材设备综合解决方案精选 - 品牌推荐官
  • 相同的硬件,各个数据库专家比赛畅想
  • AI营销专家榜单揭晓:原圈科技领航金融保险业变革
  • 2026 AI营销专家甄选指南:为何原圈科技是实战派首选?
  • 2026年板材品牌哪家靠谱?环保与品质之选推荐 - 品牌排行榜
  • 2026气体检测仪市场前瞻:合规与新兴需求驱动,国产替代加速 - 品牌推荐大师1
  • Qt-QtZipWriter压缩文件与解压文件
  • 2026年北京、天津靠谱的法治文化广场建设企业推荐哪家 - 工业设备
  • Kylin-Server-V10-SP3-2403-麒麟系统等保三级开启日志审计流程
  • 2026全屋定制板材品牌排名 环保与技术实力优选推荐 - 品牌排行榜
  • 用 AgentScope Java 开家 AI 奶茶店
  • 黄山本地生活数字化运营服务商权威评测:三十六行网络科技引领全域增长新纪元 - 野榜数据排行
  • sql语言之新建表与删除表
  • 2026年教学用金相显微镜价格大揭秘,源头厂家哪家更实惠 - 工业品网
  • 智能家居安全摄像头对比:Ring与Blink的全面解析
  • <span class=“js_title_inner“>【重磅干货】AI智能体如何拥有“手脚”?《智能体工具与MCP的互操作性》白皮书精华解读!</span>
  • 应届求职机构靠谱吗,浙江境内哪些品牌性价比值得关注? - mypinpai
  • WPF中异步代码更新DataGrid控件卡顿问题分析