You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Topshelf部署Windows服务调用Apache.NMS.ActiveMQ报IConnectionFactory创建错误

问题原因

该异常的核心是Apache.NMS核心包与Apache.NMS.ActiveMQ实现包版本不兼容:高版本的Apache.NMS核心接口中新增了CreateConnectionAsync抽象方法,但你当前使用的1.8.0版本Apache.NMS.ActiveMQ实现包未提供该方法的实现,导致接口契约不匹配。

解决方案

按优先级依次尝试以下操作即可解决:

  1. 统一依赖包版本
    Apache.NMS.ActiveMQ 1.8.0仅适配同版本的Apache.NMS核心包,卸载所有更高版本的Apache.NMS包,将两个包的版本都锁定为1.8.0即可。Nuget包管理器控制台执行命令:
Install-Package Apache.NMS -Version 1.8.0
Install-Package Apache.NMS.ActiveMQ -Version 1.8.0
  1. 清理错误的程序集绑定重定向
    打开项目配置文件(app.config),检查<runtime>下的<assemblyBinding>节点,删除所有针对Apache.NMS、Apache.NMS.ActiveMQ的版本重定向规则,重新编译后VS会自动生成正确的绑定配置。
  2. 可选升级方案
    如果项目允许升级依赖,直接将Apache.NMS和Apache.NMS.ActiveMQ两个包同步升级到最新稳定版,保持二者版本号完全一致即可解决接口不匹配问题。

操作完成后清理解决方案,重新编译运行即可。

内容的提问来源于stack exchange,提问作者Jheferson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 02:15:05