gpt4 book ai didi

java - Solr Tomcat org.apache.solr.common.SolrException : lazy loading error

转载 作者:行者123 更新时间:2023-11-28 22:12:30 25 4
gpt4 key购买 nike

Ubuntu 14.04

我使用 sudo apt-get install solr-tomcat 安装。

似乎“核心”功能已安装并且正在运行,但没有任何插件(或者我只是不知道去哪里找)。

我正在尝试使用 extract函数,它是一个插件。

当我尝试时,我得到了这个

org.apache.solr.common.SolrException: lazy loading error at org.apache.solr.core.RequestHandlers$LazyRequestHandlerWrapper.getWrappedHandler(RequestHandlers.java:260) at org.apache.solr.core.RequestHandlers$LazyRequestHandlerWrapper.handleRequest(RequestHandlers.java:242) at org.apache.solr.core.SolrCore.execute(SolrCore.java:1376) at org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:365) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:260) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:745) Caused by: org.apache.solr.common.SolrException: Error loading class 'solr.extraction.ExtractingRequestHandler' at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:414) at org.apache.solr.core.SolrCore.createInstance(SolrCore.java:419) at org.apache.solr.core.SolrCore.createRequestHandler(SolrCore.java:455) at org.apache.solr.core.RequestHandlers$LazyRequestHandlerWrapper.getWrappedHandler(RequestHandlers.java:251) ... 16 more Caused by: java.lang.ClassNotFoundException: solr.extraction.ExtractingRequestHandler at java.net.URLClassLoader$1.run(URLClassLoader.java:366) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:789) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:274) at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:398) ... 19 more

我手动下载了最新版本只是为了调查,确实找到了一个“提取”目录,并且在其中有一个名为 ExtractingRequestHandler.java 的文件。

我不是 Java 专家。我查找了与错误指示类似的路径并找到了“/usr/share/maven-repo/org/apache/solr/solr-core”,它与“org.apache.solr.core”并不严格对应。所以,我不愿在这里假设任何事情。

Solr 正在搜索“提取”目录 - 我只是不确定在哪里。

我的 solrconfig.xml 文件有这个

<requestHandler name="/update/extract" 
startup="lazy"
class="solr.extraction.ExtractingRequestHandler" >
<lst name="defaults">
<!-- All the main content goes into "text"... if you need to return
the extracted text or do highlighting, use a stored field. -->
<str name="fmap.content">text</str>
<str name="lowernames">true</str>
<str name="uprefix">ignored_</str>

<!-- capture link hrefs but ignore div attributes -->
<str name="captureAttr">true</str>
<str name="fmap.a">links</str>
<str name="fmap.div">ignored_</str>
</lst>
</requestHandler>

我尝试将该提取目录复制到这两个目录中:/usr/share/maven-repo/org/apache/solr//etc/solr

希望其中一个是“主”solr 目录,但运气不好。

我加了

<lib dir="/var/lib/solr/contrib/extraction/src/java/org/apache/solr/handler/extraction" />

到我的 solrconfig.xml 并在 tomcat 日志中观察到这一点:

INFO: Adding 'file:/var/lib/solr/contrib/extraction/src/java/org/apache/solr/handler/extraction/ExtractingRequestHandler.java' to classloader

仍然没有运气。

提前致谢。

编辑:

我检查了我的 tomcat 日志,我看到了以下内容:

Nov 23, 2014 12:53:44 AM org.apache.solr.core.RequestHandlers initHandlersFromConfig INFO: adding lazy requestHandler: solr.extraction.ExtractingRequestHandler

这很奇怪,因为它表明在 solr.extraction.ExtractingRequestHandler 中创建了一个“惰性请求处理程序”,这与错误相矛盾:

Error loading class 'solr.extraction.ExtractingRequestHandler'

如果我从上面的配置中删除“startup = 'lazy'”属性,当我重新启动 Tomcat 时,会出现错误:

SEVERE: org.apache.solr.common.SolrException: Error loading class 'solr.extraction.ExtractingRequestHandler'

最佳答案

您似乎要将源目录添加到类路径中 - 您需要将编译后的版本及其依赖项添加到类路径中。

在正常分发(来自 Solr 主页)中,它位于 contrib/extraction/lib 中,它还捆绑了提取模块的其他依赖项。

来自该目录中的 README.txt:

Getting Started

You will need Solr up and running. Then, simply add the extraction JAR file, plus the Tika dependencies (in the ./lib folder) to your Solr Home lib directory. See http://wiki.apache.org/solr/ExtractingRequestHandler for more details on hooking it in and configuring.

尽管您似乎在遵循旧版本的操作方法(来自您的请求处理程序名称)。 current configuration is detailed in the community wiki ,并且分发版中还捆绑了一个完整的示例。

检索和提取文件:

$ wget http://<mirror>/lucene/solr/4.10.2/solr-4.10.2.tgz
$ tar xvzf solr-4.10.2.tgz
$ cd solr-4.10.2/contrib/extraction/lib/
$ ls
apache-mime4j-core-0.7.2.jar pdfbox-1.8.4.jar
apache-mime4j-dom-0.7.2.jar poi-3.10.1.jar
aspectjrt-1.6.11.jar poi-ooxml-3.10.1.jar
bcmail-jdk15-1.45.jar poi-ooxml-schemas-3.10.1.jar
bcprov-jdk15-1.45.jar poi-scratchpad-3.10.1.jar
boilerpipe-1.1.0.jar rome-0.9.jar
commons-compress-1.7.jar tagsoup-1.2.1.jar
dom4j-1.6.1.jar tika-core-1.5.jar
fontbox-1.8.4.jar tika-parsers-1.5.jar
icu4j-53.1.jar tika-xmp-1.5.jar
isoparser-1.0-RC-1.jar vorbis-java-core-0.1.jar
jdom-1.0.jar vorbis-java-tika-0.1.jar
jempbox-1.8.4.jar xercesImpl-2.9.1.jar
jhighlight-1.0.jar xmlbeans-2.6.0.jar
juniversalchardet-1.0.3.jar xmpcore-5.1.2.jar
metadata-extractor-2.6.2.jar xz-1.4.jar

关于java - Solr Tomcat org.apache.solr.common.SolrException : lazy loading error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27058991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com