2012-08-05 72 views
6

當我將solrconfig.xml中此配置:異常:找不到類SolrCoreAware

<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"> 
    <lst name="defaults"> 
     <str name="config">data-config.xml</str> 
    </lst> 
</requestHandler> 

然後啓動tomcat的,我得到這個異常:

ClassNotFoundException: org.apache.solr.util.plugin.SolrCoreAware 

我查迪爾

<lib dir="../../dist/" regex="apache-solr-dataimporthandler-\d.*\.jar" /> 

jar導入,它有什麼問題? lib節點的dir屬性是什麼意思?

+0

的SolrCoreAware類內的Solr本身使用,因此應已經包含其中包含它的罐子在'solr.war'文件時,'WEB-INF/lib'文件夾內。你是否因某種原因修改了'solr.war'?你正在運行哪個版本的Solr? – javanna 2012-08-06 07:27:11

+0

@ javanna,謝謝你的幫助,我忘了在solr/WEB-INF/lib中添加「solr-importdata.jar」,但是我將它添加到tomcat lib中,solr找不到它,所以異常就會拋出。 – 2012-08-07 12:25:52

+0

這甚至更好,你有不同的班級裝載機的罐子。 DIH看不到solr,solr看不到我猜的dih。很高興你解決了。 – javanna 2012-08-07 14:20:05

回答

4

轉換OP的評論到答案(一)它更容易發現和(b)爲我工作:

小心不要把solr-dataimporthandler-x.y.z.jar

Tomcat\lib        <- Doesn't work! 

而是確保它被放置在:

Tomcat\webapps\solr\WEB-INF\lib   <- Works.