我在服务器上安装了ActiveMQ 5.13.0 Release并尝试使用C#客户端访问代理.我创建了一个控制台应用程序并安装了Apache.NMS.ActiveMQ版本1.7.1 nuget包.当我尝试访问代理时:
Line 1 Uri uri = new Uri("tcp://192.168.110.136:61616"); Line 2 NMSConnectionFactory NMSFactory = new NMSConnectionFactory(uri);
在第二行,它抛出没有找到连接URI的IConnectionFactory实现:tcp://192.168.110.136:61616 / exception.
Project的.NET Framework版本是3.5,我也尝试过使用.NET 4.0和4.5.但结果是一样的,抛出同样的异常.
ActiveMQ正在服务器上运行,我可以使用telnet和管理UI访问服务器的61616端口.我检查了其他类似的帖子,但没有帮助解决问题.欢迎任何帮助.
谢谢.
首先,确保您的应用程序引用Apache.NMS.dll和Apache.NMS.ActiveMQ.dll程序集,以便访问所有实现位.
然后尝试使用引用您尝试通过通用NMSConnectionFactory使用的提供程序实现的URI:
Uri uri = new Uri("activemq:tcp://192.168.110.136:61616");
您可以选择直接使用ActiveMQ IConnectionFactory实现:
IConnectionFactory factory = new Apache.NMS.ActiveMQ.ConnectionFactory(uri);