我将ActiveMQ 5.8.0和Karaf 2.3.1单独运行。
我在Karaf所做的是:(还有其他:spring,cxf,camel已安装)
features:addUrl mvn:org.apache.activemq/activemq-karaf/5.8.0/xml/features
osgi:install -s mvn:org.apache.activemq/activemq-camel/5.8.0
features:list | grep mq
显示:
[uninstalled] [2.11.0 ] camel-amqp camel-2.11.0
[uninstalled] [2.11.0 ] camel-mqtt camel-2.11.0
[uninstalled] [5.8.0 ] activemq-client activemq-5.8.0
[uninstalled] [3.1.3.RELEASE ] spring activemq-5.8.0
[uninstalled] [5.8.0 ] activemq-broker activemq-5.8.0
[uninstalled] [5.8.0 ] activemq-http activemq-5.8.0
[uninstalled] [5.8.0 ] activemq-camel activemq-5.8.0
[uninstalled] [5.8.0 ] activemq-web-console activemq-5.8.0
如果我安装activemq-broker
,它将安装服务器以及ActiveMQ的所有内容,我不需要。
在我的一个软件包中,我公开了camel-cxf端点,我将消息发送到队列。问题是,当我尝试安装我的软件包时,它会给我一个错误:
missing requirement [169.0] osgi.wiring.package; (osgi.wiring.package=org.apache.activemq)
我知道Karaf中安装的某些功能必须导出此软件包:org.apache.activemq
,但他们没有。
我无法找到任何信息要在Karaf中安装哪些功能,它将单独使用activemq内容。我不希望Karaf让ActiveMQ在其中运行。我只需要安装必要的功能。
任何人都可以指出我需要为此目的安装哪些功能?
答案 0 :(得分:3)
我找到了解决方案。我只需安装activemq-client
。这不会安装所有其他功能。
features:install activemq-client