为OSGI容器创建一个Web应用程序包(WAB),该容器不包含maven-bundle-plugin的所有依赖项jar

时间:2011-04-21 10:51:31

标签: java web-applications deployment osgi packages

我想在OSGI容器(如Karaf)上部署一个java webapp(带有web.xml和所有东西),以任何方式打包(war,jar,我不在乎)。 有两个重要的限制因素:

  1. WEB-INF / lib必须为空,并且打包的webapp应该在容器上安装的其他包中查找所需的类
  2. 捆绑包应该是一个webapp,因此容器知道必须读取web.xml才能运行它并通过已安装在容器上的HTTP服务(如jetty)使其可用(如在Karaf上) 。
  3. 应该使用maven-bundle-plugin 2.2.0
  4. 完成

    我成功完成了捆绑并使用该插件和maven-sling-plugin自动部署它们。我想念的是将我的捆绑包打包为WAB的正确配置,我被告知这是一种正确的包装,没有依赖性。

1 个答案:

答案 0 :(得分:1)

你真的需要一个web.xml吗?我最近经历过并更新了许多打包为战争的webapp,将它们转换为纯粹的捆绑包。您通常在web.XML中指定的大多数信息也可以在您的清单中指定,以便由pax web(karaf的前端到码头)获取。到目前为止,我还没有遇到过一场无法转换成纯粹束的战争(这将满足你的限制)。