【发布时间】:2015-05-07 23:44:28
【问题描述】:
我正在尝试使用 Karaf 来托管 REST 服务。我正在使用 4.0.0 M2 版本(因为我的原型还处于早期阶段)。根据我的拼凑,为了托管 REST 服务,我可以使用 Karaf 功能来安装 http 和 cxf 功能。
到目前为止我做了什么......
- 开始 Karaf - 开始正常
- 设置它以查找我的本地 maven 存储库 - 很好
- 使用
feature:repo-add mvn:org.apache.cxf.karaf/apache-cxf/3.0.4/xml/features- 没有错误,我可以在我的 mvn repo 中看到 xml - 运行
feature:install http- 成功了,我可以看到 Jetty 代码正在运行的证据 - 运行
feature:install cxf- 失败
我在控制台中收到此消息
karaf@root()> 功能:安装 cxf 执行命令时出错:无法 解决根:缺少需求 [root] osgi.identity; osgi.identity=cxf-http-jetty;类型=karaf.feature;版本=3.0.4 [引起:无法解析 cxf-http-jetty/3.0.4:缺失 要求 [cxf-http-jetty/3.0.4] osgi.identity; osgi.identity=org.apache.cxf.cxf-rt-transports-http-jetty; 类型=osgi.bundle;版本="[3.0.4,3.0.4]";分辨率:=强制 【原因:无法解决 org.apache.cxf.cxf-rt-transports-http-jetty/3.0.4:缺少要求 [org.apache.cxf.cxf-rt-transports-http-jetty/3.0.4] osgi.wiring.package; filter:="(&(osgi.wiring.package=org.eclipse.jetty.continuation)(version>=7.6.0)(!(version>=8.2.0)))"]]
如果我查看那里的捆绑包,我可以在安装 http 时在我的系统中看到 org.eclipse.jetty.continuation 包
2015-05-08 09:29:02,928 |信息 | pool-40-thread-1 | 特征ServiceImpl | 6 - org.apache.karaf.features.core - 4.0.0.M2 | org.eclipse.jetty.continuation / 9.2.7.v20150116
所以,它的版本是 9.2.7。如果我在安装 cxf 时理解错误,它需要一个 >= 7.6.0 而不是 >= 8.2.0 的版本。
是否有可以与 CXF 一起使用的 HTTP 服务版本?我对 Karaf 还很陌生,所以我不确定如何指定旧版本。感谢您的帮助。
【问题讨论】:
-
因此,我没有使用 Karaf 4.0,而是安装了 Karaf 3.0.3,并且按照相同的步骤,能够安装 cxf 功能。那么,也许真正的问题是 cxf 是否有支持 karaf 4.0 的路线图?
标签: karaf