OSGI包错误:包73中的未解析包:package = org.apache.commons.httpclient

时间:2011-10-05 10:56:59

标签: java osgi apache-camel

  1. 我必须使用camel-http组件。
  2. 我在POM文件中添加了依赖项。 (代码清单1)
  3. 我开始收到未解决的包错误 运行时的“package = org.apache.commons.httpclient”。
  4. 所以我添加了commons-httpclient的依赖项(代码清单2)。我在嵌入式依赖中添加了它,因为commons-httpclient是一个非osgi jar。
  5. 我仍然遇到同样的错误。
  6. 我也尝试在标记中添加此包。
  7. 注意 - 我可以在生成的包jar的MANIFEST文件中看到依赖项反映在Import-Package下。

    代码清单1:

        <dependency>
          <groupId>org.apache.camel</groupId>
          <artifactId>camel-http</artifactId>
          <version>${camel-version}</version>
          <!-- use the same version as your Camel core version -->
        </dependency>
    

    代码清单2:

        <dependency>
          <groupId>commons-httpclient</groupId>
          <artifactId>commons-httpclient</artifactId>
          <version>3.1</version>            
        </dependency>
    

1 个答案:

答案 0 :(得分:0)

Servicemix有一个针对commons-httpclient的OSGi包装包,您可以尝试安装它而不是将其嵌入到包中吗?

mvn:org.apache.servicemix.bundles / org.apache.servicemix.bundles.commons-httpclient / 3.1_4