运行 Solr 快速入门教程时加载 ExtractingRequestHandler 失败
Fail to load ExtractingRequestHandler when running the Solr Quickstart Tutorial
我使用 Homebrew 在 OS X 10.10.2 上安装了 Solr 5.0.0。我正在尝试遵循 quick start instructions,但在尝试索引文件目录时出现错误。
我能够通过 运行
成功启动示例 Solr 服务器
bin/solr start -e cloud -noprompt
按照教程的指示。然后我尝试通过 运行
索引文件目录
./bin/post -c gettingstarted docs/
(请注意,这必须从 Solr 安装根目录的 libexec 子目录完成。)
对于它尝试添加的每个文件,我都收到服务器错误 500。相关堆栈:
Caused by: org.apache.solr.common.SolrException: Error loading class 'solr.extraction.ExtractingRequestHandler'
at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:492)
at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:423)
at org.apache.solr.core.SolrCore.createInstance(SolrCore.java:559)
at org.apache.solr.core.SolrCore.createRequestHandler(SolrCore.java:632)
at org.apache.solr.core.RequestHandlers$LazyRequestHandlerWrapper.createRequestHandler(RequestHandlers.java:326)
at org.apache.solr.core.RequestHandlers$LazyRequestHandlerWrapper.getWrappedHandler(RequestHandlers.java:298)
... 30 more
问题似乎是 ExtractingRequestHandler 不在类路径中。
ExtractingRequestHandler 在 solr-cell-5.0.0.jar.
jar tf dist/solr-cell-5.0.0.jar | grep ExtractingRequestHandler
org/apache/solr/handler/extraction/ExtractingRequestHandler.class
我不清楚它是否需要位于执行发布的命令的类路径或 Solr 实例中。 的答案听起来像是后者。但是,我尝试设置
export CLASSPATH=dist/solr-cell-5.0.0.jar
在尝试索引文件之前看到了同样的错误。
我在教程中没有看到任何关于如何配置它的内容。错误是什么,我该如何克服它?
看起来问题是 Solr 示例配置中的路径不正确。解决方法是从 SOLR_ROOT/contrib 添加软链接并分发到 SOLR_ROOT/libexec/contrib
下的相应目录
详情here and here.
我使用 Homebrew 在 OS X 10.10.2 上安装了 Solr 5.0.0。我正在尝试遵循 quick start instructions,但在尝试索引文件目录时出现错误。
我能够通过 运行
成功启动示例 Solr 服务器bin/solr start -e cloud -noprompt
按照教程的指示。然后我尝试通过 运行
索引文件目录./bin/post -c gettingstarted docs/
(请注意,这必须从 Solr 安装根目录的 libexec 子目录完成。)
对于它尝试添加的每个文件,我都收到服务器错误 500。相关堆栈:
Caused by: org.apache.solr.common.SolrException: Error loading class 'solr.extraction.ExtractingRequestHandler'
at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:492)
at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:423)
at org.apache.solr.core.SolrCore.createInstance(SolrCore.java:559)
at org.apache.solr.core.SolrCore.createRequestHandler(SolrCore.java:632)
at org.apache.solr.core.RequestHandlers$LazyRequestHandlerWrapper.createRequestHandler(RequestHandlers.java:326)
at org.apache.solr.core.RequestHandlers$LazyRequestHandlerWrapper.getWrappedHandler(RequestHandlers.java:298)
... 30 more
问题似乎是 ExtractingRequestHandler 不在类路径中。
ExtractingRequestHandler 在 solr-cell-5.0.0.jar.
jar tf dist/solr-cell-5.0.0.jar | grep ExtractingRequestHandler
org/apache/solr/handler/extraction/ExtractingRequestHandler.class
我不清楚它是否需要位于执行发布的命令的类路径或 Solr 实例中。
export CLASSPATH=dist/solr-cell-5.0.0.jar
在尝试索引文件之前看到了同样的错误。
我在教程中没有看到任何关于如何配置它的内容。错误是什么,我该如何克服它?
看起来问题是 Solr 示例配置中的路径不正确。解决方法是从 SOLR_ROOT/contrib 添加软链接并分发到 SOLR_ROOT/libexec/contrib
下的相应目录详情here and here.