我一直在尝试在Apache karaf中使用ActiveMQ设置pax-jms。以下是我安装的相应版本:
activemq-osgi:5.15.3OPS4J Pax JMS *:1.0.3卡拉夫:4.2.0JMS API:2 ….
错误消息准确无误。 ActiveMQ 5.x不支持JMS 2.0。这不是配置问题。它根本没有实现。如果您想从ActiveMQ代理获得JMS 2.0支持,那么您应该使用 ActiveMQ Artemis 。对于它的价值, 您引用的文档 正在使用ActiveMQ Artemis。
pax-jms-activemq模块支持ActiveMQ 5.x.命令行工具可能不起作用b / c它调用ConnectionFactory.createContext()而不是.createConnection()。 JMS v2.0有一些ActiveMQ 5.x不支持的功能 - 基本上是共享的持久订阅。
只要获取ConnectionFactory的代码调用.createConnection()而不是.createContext(),它就可以正常使用JMS API 2.0 jar。 Java代码,camel-activemq,camel-jms等都可以正常工作。