【问题标题】:How to specify system package exports in pax exam如何在 pax 考试中指定系统包导出
【发布时间】:2013-08-29 00:08:17
【问题描述】:

Pax 考试用于测试 Apache CXF 分布式 OSGi。我最近更新到 apache felix 4.2.1。在较新版本的 felix 中,我遇到了由 cxf 规范包和系统包导出的包的问题。不知道为什么旧的 felix 3.x 没有发生这种情况。

对于我们在 felix 配置中控制的分布 (see the config template we use) 在那里我们使用“org.osgi.framework.system.packages”属性来定义系统包导出。

我怎样才能使用 pax 考试做同样的事情。我知道如何使用 karaf 考试来做到这一点,但它不能用于我们想要明确地针对纯 felix 进行测试。

我已经测试过 CoreOptions.systemPackage 但它只允许添加导出而不是重新定义它们。

【问题讨论】:

    标签: osgi cxf pax-exam


    【解决方案1】:

    从 ops4j 列表中得到答案: CoreOptions.frameworkProperty("org.osgi.framework.system.packages").value(sysPackages)

    该选项适用于 Eclipse Equinox,但不适用于 Apache Felix。

    【讨论】:

      【解决方案2】:

      Pax 考试 3

       Option[] conf = options(
          systemProperty("org.osgi.framework.startlevel.beginning").value("4"),
          systemPackages(
              "com.ibm.uvm.tools",
              "com.sun.jdmk.comm",
              "sun.misc",
              "javax.jmdns",
              "javax.microedition.io",
              "javax.servlet.http",
              "javax.persistence",
              "javax.servlet",
              "javax.net.ssl",
              "javax.jms",
              "javax.mail",
              "javax.mail.internet",
              "javax.mail.util"),
           ...);
      

      问候 罗兰

      【讨论】:

        猜你喜欢
        • 2016-03-08
        • 2014-08-14
        • 1970-01-01
        • 2015-09-25
        • 1970-01-01
        • 1970-01-01
        • 2013-02-04
        • 1970-01-01
        • 2013-03-03
        相关资源
        最近更新 更多