solr cloud - java.lang.NoClassDefFoundError:org / apache / lucene / analysis / util / TokenizerFactory

时间:2016-11-05 08:36:36

标签: java solr apache-zookeeper solrcloud

当使用外部zookeeper群集启动solr云时,出现错误:

  

java.lang.NoClassDefFoundError:org / apache / lucene / analysis / util / TokenizerFactory

我检查了配置,但没有发现任何错误。

solr-6.2.0-cloud/server/lib/ext添加了额外的第三方广告罐,这是一个问题吗?

可能是什么原因?感谢。

2 个答案:

答案 0 :(得分:1)

我已经解决了这个问题。

<强>原因:

没有在适当的位置添加第三方罐子,导致jvm无法找到某个类。

在solr云模式下运行时,这似乎是一项特殊要求。

<强>解决方案:

首先将罐装在$SOLR_BASE/dist或其他适当位置。

然后通过<lib>中的solrconfig.xml标记指定其他jar的位置。

e.g
    <lib dir="../../../dist/ext/" regex="jcseg-analyzer-\d.*\.jar" />
    <lib dir="../../../dist/ext/" regex="jcseg-core-\d.*\.jar" />
    <lib dir="../../../dist/ext/" regex="postgresql-\d.*\.jar" />

然后将配置上传到zookeeper,重新加载solr集合,然后它就可以了。

<强>参见:

答案 1 :(得分:0)

您不需要任何外部jar来设置外部zookeeper。这可能是因为您在solr config fie或schema文件中进行的其他更改

How to setup external zookeeper with solr