首页
学习
活动
专区
圈层
工具
发布

Karaf开发
EN

Stack Overflow用户
提问于 2012-02-23 21:52:19
回答 2查看 5.1K关注 0票数 2

我目前正在为karaf开发捆绑包,并有一些问题...

我写了一个基于cxf的bundle/webservice,我试图将它部署在karaf中,但它无法启动该bundle,因为它不能解析一些包,例如

org.osgi.framework.BundleException:捆绑包org.springframework.aop 56中的未解决约束:无法解析56.0:缺少requirement 56.0包;(&(package=org.aopalliance.aop)(version>=1.0.0)(!(version>=2.0.0)))

所以这里有一个问题,这个包依赖来自spring-aop (3.1.0.RELEASE),那么问题在哪里呢?缺少什么依赖项?我如何解决这样的问题?

在这种情况下,我不清楚开发过程。我应该在deploy中部署所有缺少的包吗?因为我想从我开发的捆绑包中保留第三方库。我需要部署哪些包呢?这是一个试错的过程吗?有没有一种通用的方法让maven来做依赖的事情呢?

我发现了一个文件夹"system“,并在文档中看到它是一个像maven一样的存储库,它是用于功能的吗?

对于测试用例,我有一个karaf和一些预先部署的捆绑包,并将我的webservice捆绑包放入其中,但再次执行...

原因: java.lang.ClassNotFoundException: javax.servlet.http.HttpServlet

缺少什么依赖项?

我已经读过了关于camel和karaf的教程,但它没有解释部署的内容,所以有人能给我推荐一个好的教程吗?

谢谢!克里斯

EN

回答 2

Stack Overflow用户

发布于 2012-03-02 21:08:15

Short answer

向下滚动到引用"camel-cxf“的部分,然后运行两个命令feature:addurl和feature:install。我有预感这会解决你所有的问题。

spring-面向方面编程

在Karaf控制台上键入:

代码语言:javascript
复制
exports | grep org.aopalliance.aop

我想你会看到这样的代码行:

代码语言:javascript
复制
XX org.aopalliance.aop; version=3.1.0.RELEASE

因此,尽管spring-aop捆绑包有正确的包,但它们是错误的版本,请求的范围是>=1.0.0和<2.0.0,因此3.1.0不能满足这一要求。

Deploying/Installing

您可以将捆绑包放入${karaf.home}/deploy或使用控制台。

您可以使用以下命令从Karaf控制台安装maven包:

代码语言:javascript
复制
install -s mvn:groupId/artifactId/version/packaging/classifier

-s启动包的位置和打包/分类器是可选的。

你可以在这里找到很多准备好OSGi的maven依赖,我看了一下,但是你的spring http://ebr.springsource.com/repository/app/依赖太旧了,你用的是什么版本的CXF?

了解一下Karaf的特性--它们基本上是XML文件,列出了可以安装的捆绑包套件。对于部署大量的bundle非常有用,它们可以安装到maven存储库中。

Karaf中提供了一些标准功能,请尝试:

代码语言:javascript
复制
features:install war

这将为您提供一个jetty the容器,并可以解析您的ClassNotFoundException: javax.servlet.http.HttpServlet,只要它是正确的版本

Camel也有一个功能文件,可能会解决你所有的问题,试试这个:

代码语言:javascript
复制
features:addurl mvn:org.apache.camel.karaf/apache-camel/2.9.0/xml/features
features:install camel-cxf

教程

有相当多的可用资源,其中一些在http://karaf.apache.orghttp://fusesource.com上,但也可以看看Karaf发行版中的PDF手册。一定要注意信息可能会过期。

票数 7
EN

Stack Overflow用户

发布于 2014-01-01 14:47:50

请发布您的MANIFEST.MF文件。我想你没有提到maven-bundle-plugin依赖中的标签。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9414375

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档