2

我正在使用 Karaf 2.2.8 ,在我的代码中我正在使用 apache poi 阅读和 excel 文件

try{

Workbook wb=WorkbookFactory.create(inp);

}

该应用程序使用 poi-ooxml-3.8.jar 在 tomcat 6 和 tomcat 7 中运行良好

在卡拉夫 2.2.8 中:-

***当使用 servicemix 捆绑包时给了我

ClassNotFoundException: org.apache.poi.ss.usermodel.WorkbookFactory not found by org.apache.servicemix.bundles.poi

***使用 apache poi 时

Unable to resolve 266.0: missing requirement [266.0] package; (package=org.apache.poi))

用于安装 servicemix poi 的命令:-

install -s mvn:avalon-framework/avalon-framework/4.1.3;
install -s mvn:junit/junit/3.8.2;
install -s mvn:commons-codec/commons-codec/1.5;
install -s mvn:commons-logging/commons-logging/1.1;
install -s mvn:javax.servlet/servlet-api/2.3;
install -s mvn:log4j/log4j/1.2.13;
install -s mvn:logkit/LogKit/1.2;
install -s mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.poi/3.8_1;

用于安装 apache poi 的命令:-

install -s mvn:org.apache.poi/poi-ooxml/3.8;
install -s mvn:org.apache.poi/poi-ooxml-schemas/3.8;
install -s mvn:org.apache.poi/poi/3.8;
install -s mvn:commons-codec/commons-codec/1.5;
install -s mvn:dom4j/dom4j/1.6.1;
install -s mvn:stax/stax-api/1.0.1;
install -s mvn:org.apache.xmlbeans/xmlbeans/2.3.0;

请有任何帮助

4

1 回答 1

0

我想到了。我不必将 apache poi 作为 osgi 包。我将它添加到 karaf 内的“Lib”目录并导出

所需的软件包如下:-

karaf.home/etc/custom.properties 
karaf.systemBundlesStartLevel=50 
... 
com.sun.jndi.ldap; \ 
oracle.jdbc; \ 
org.apache.poi.ss.usermodel; \ 
org.apache.poi; 

现在它工作得很好

于 2012-11-22T07:17:24.117 回答