2

您好我正在使用 Solr 4 beta,我不是 Java 程序员。我正在为我的 MySQL 数据库配置带有示例文件夹的DataImportHandler 。问题是,当我启动服务器时:

java -jar start.jar

我的 solrconfig.xml 有这个:

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

从另一个线程的建议是将 apache-solr-solrj-4.0.jar 复制到 lib/ 目录,我这样做了。唯一不同的是,在当前的 Solr 版本中,文件名是:apache-solr-solrj-4.0.0-BETA.jar,但我尝试使用不同的名称复制它。另外,我在 solrconfig.xml 中添加了这一行,以便加载 SolrJ:

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

尽管如此,我仍然遇到异常

SEVERE: null:org.apache.solr.common.SolrException: RequestHandler init failure
    at org.apache.solr.core.RequestHandlers.initHandlersFromConfig(RequestHandlers.java:168)
.
....
Caused by: java.lang.ClassNotFoundException: org.apache.solr.handler.dataimport.DataImportHandler
4

3 回答 3

12

在你的 solr conf 检查你是否包含了 DIH jar,如果你没有,那么你应该添加如下内容

<lib dir="../../dist/" regex="solr-dataimporthandler-.*\.jar" />
于 2013-02-03T09:09:01.363 回答
2

您需要将 \contrib\dataimporthandler\lib 和 apache-solr-dataimporthandler-4.0.jar 中的文件从 dist 文件夹添加到您的类路径。

于 2012-08-18T14:19:53.990 回答
0

我尝试使用示例文件夹从 MySQL 导入数据显然犯了一个错误。在这个目录中有一个可以正常工作的 example-DIH 文件夹,它可以正常工作。

于 2012-08-18T16:38:10.883 回答