具有PDF提取的NoClassDefFoundError MimeTypeException

时间:2011-12-09 11:39:23

标签: solr apache-tika solr-cell

我试图将更新/提取与PDF文件一起使用时出现异常

我的设置是: - Ubuntu Server 11.10 雄猫6 Solr 3.5.0.2011.11.22.15.54.38

我可以浏览到solr / admin OK

我已将所有contrib / extract和apache-solr-cell3.5.0.jar库放入tomcat文件夹webapps / solr / WEB-INF / lib

我使用以下方法调用提取物: -

curl "http://localhost:8080/solr/update/extract?uprefix=attr_&fmap.content=attr_content&commit=true" -F "file=/path/to/my.pdf"

错误是

java.lang.NoClassDefFoundError: org/apache/tika/mime/MimeTypeException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:383)
at org.apache.solr.core.SolrCore.createInstance(SolrCore.java:425)
at org.apache.solr.core.SolrCore.createRequestHandler(SolrCore.java:461)
at org.apache.solr.core.RequestHandlers$LazyRequestHandlerWrapper.getWrappedHandler(RequestHandlers.java:248)
at org.apache.solr.core.RequestHandlers$LazyRequestHandlerWrapper.handleRequest(RequestHandlers.java:239)
at org.apache.solr.core.SolrCore.execute(SolrCore.java:1372)

会感激任何指针 - 唯一一次这个错误似乎出现在其他地方是Nutch和缓存的结果。

我尝试在查询字符串中发送mimetype,也尝试在* .doc文件中发送,但是出现了同样的错误。

3 个答案:

答案 0 :(得分:3)

根据错误消息,您获得的不是MimeTypeException异常:问题是NoClassDefFoundError,因为Solr无法加载类MimeTypeException

通常此类出现在tika-core.jar中。

确保您确实拥有该文件,并检查lib中是否有solrconfig.xml语句指向正确的目录。

答案 1 :(得分:1)

这是由于复制必要的tika库(到tomcat6 / webapps / solr / WEB-INF / lib)的基本错误,但是将jar文件的所有权保留为ROOT而不是将它们chown到TOMCAT6。设置正确的权限并重新启动Tomcat后,它开始正常运行

答案 2 :(得分:1)

找到了这个问题的解决方案,我正在使用SolrJ来更新我的pdf索引。

将solr部署到tomcat之后,我没有将以下库包含到tomcat / webapp中

我得到了所有延迟加载问题等 我甚至试图得到apache tika ... 直到我这样做......

关闭tomcat

\ apache-solr-3.5.0 \ contrib \ extraction

将上面的库复制到下面

\ Apache的Tomcat的7.0.26 \ web应用\ solr的\ WEB-INF \ lib中

启动tomcat

欢呼声