首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Apache Karaf OSGi应用程序结构

Apache Karaf OSGi应用程序结构
EN

Stack Overflow用户
提问于 2012-07-26 00:05:17
回答 2查看 605关注 0票数 1

我需要创建一个应用程序并将其部署到Karaf中。但是我需要使用camel组件和java组件(简单的spring bean)。流程应如下所示:

代码语言:javascript
复制
WebService(not matter for me) -> camel-component -> spring-bean -> camel-component -> WebService(not matter for me).

这只是一个简单的路由。但我需要的是karaf接受和部署的OSGi包的目录结构。

对于e.x。我有:

代码语言:javascript
复制
su-camel
  -src
    -main
      -resources
        -META-INF
          xbean.xml (spring-bean)
    -test
      -java
      -resources

su-bean
  -src
    -main
      -java
      -resources
        -META-INF
          xbean.xml (spring-bean)
    -test
      -java
      -resources

我是用maven打包的,那么我应该在OSGi包的.jar文件中保留什么样的目录结构,以便正确部署应用程序呢?如您所见,在su-camel模块和su-bean模块中有两个src目录。

我知道servicemix接受添加了上述结构的所有组件的.zip文件。karaf支持这样的结构吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-26 00:44:04

合适的OSGi解决方案是创建两个包,每个项目一个,并同时部署它们。如果你不想这样做,你可以在你的项目清单中使用Embed-Dependency属性来包含依赖项(camel)包。这将只创建一个供您部署的包

票数 2
EN

Stack Overflow用户

发布于 2012-07-26 05:53:27

最简单的解决方案是只创建一个包含bean和camel路由的包。通常,不需要从bean中拆分路由。如果您出于某种原因需要拆分它,那么只需使用两个包。

为了简化部署,您可以使用karaf功能文件,其中列出了两个包,并最终列出了它们的进一步依赖项。Karaf还支持可以包含多个包的.kar文件。如果您的karaf服务器无法访问maven存储库,则可以使用kar文件。

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

https://stackoverflow.com/questions/11653954

复制
相关文章

相似问题

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