2011-12-09 22 views
0

我得到一個異常嘗試使用更新/ PDF文件中提取的NoClassDefFoundError MimeTypeException用PDF提取

我的設置是: - Ubuntu服務器11.10 的Tomcat 6 Solr的3.5.0.2011.11.22.15.54.38

我可以瀏覽到Solr /管理員OK

我已經把所有的contrib /提取物和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和緩存的結果。

我已經嘗試在查詢字符串和一個* .doc文件中發送mimetype,但得到了同樣的錯誤。

回答

1

這是由於複製必要的tika庫(到tomcat6/webapps/solr/WEB-INF/lib)的基本錯誤,但是將jar文件的所有權作爲ROOT保留,而不是將它們映射到TOMCAT6。設置正確的權限並重新啓動Tomcat後,它開始工作OK

3

根據錯誤消息,它不是MimeTypeException例外,你會得到:問題是NoClassDefFoundError,因爲Solr無法加載類MimeTypeException

通常這門課程在tika-core.jar中。

請確保您確實有該文件,並檢查您的solrconfig.xml中的lib語句是否指向正確的目錄。

1

找到了這個問題的解決方案,我使用SolrJ來更新我的pdf索引。

部署Solr的到tomcat後,我不包括下列庫到Tomcat/webapp的

,我讓所有的延遲加載問題,等等等等 我甚至試圖獲得Apache蒂卡... 直到我做到這一點...

關閉Tomcat的

\ Apache的Solr的-3.5.0 \的contrib \提取

複製上方到下方

\ Apache的Tomcat的7.0.26 \的webapps \ Solr的\ WEB-INF \ lib中

啓動tomcat的

歡呼