我正在尝试将Tika的语言检测功能添加到Solr(6.5.0)。 我将以下行添加到solrconfig.xml文件中:
<lib dir="C:\Program Files\SOLR\server\tikaLib\" regex="tika-app-1.14.jar" />
solrconfig.xml中的langid配置:
<updateRequestProcessorChain name="langid">
<processor class="org.apache.solr.update.processor.TikaLanguageIdentifierUpdateProcessorFactory">
<str name="langid.fl">text,title,subject,description</str>
<str name="langid.langField">language_s</str>
<str name="langid.fallback">en</str>
</processor>
<processor class="solr.LogUpdateProcessorFactory" />
<processor class="solr.RunUpdateProcessorFactory" />
</updateRequestProcessorChain>
但是我收到了以下错误:
Caused by: java.lang.ClassNotFoundException: org.apache.solr.update.processor.TikaLanguageIdentifierUpdateProcessorFactory
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.net.FactoryURLClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:540)
答案 0 :(得分:1)
你需要添加Tika所依赖的所有罐子,这些都在
中contrib\extraction\lib\
只需在solrconfig.xml中添加一条类似于上面添加的行:
<lib dir="${solr.install.dir:../../../..}/contrib/extraction/lib" regex=".*\.jar" />
应该这样做。