我正在尝试在Solr核心上添加对简体中文的支持。我尝试将以下内容添加到我的schema.xml文件中:
<fieldType name="text_zh" class="solr.TextField" positionIncrementGap="100">
<analyzer class="org.apache.lucene.analysis.cn.smart.SmartChineseAnalyzer"/>
</fieldType>
重新加载内核时出现以下错误:
yirmi: org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: 无法为核心yirmi加载conf:插件初始化失败 [schema.xml] fieldType“ text_zh”:无法加载分析器: org.apache.lucene.analysis.cn.smart.SmartChineseAnalyzer。模式文件 是/var/solr/data/yirmi/conf/schema.xml solr: org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: 无法为核心solr加载conf:从加载solr config时出错 /var/solr/data/solr/conf/solrconfig.xml
当我尝试
<fieldType name="text_zh" class="solr.TextField" positionIncrementGap="100">
<!--<analyzer class="org.apache.lucene.analysis.cn.smart.SmartChineseAnalyzer"/>-->
<analyzer>
<tokenizer class="solr.HMMChineseTokenizerFactory"/>
<filter class="solr.CJKWidthFilterFactory"/>
<filter class="solr.StopFilterFactory"
words="org/apache/lucene/analysis/cn/smart/stopwords.txt"/>
<filter class="solr.PorterStemFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
加载代码时出现以下错误:
yirmi: org.apache.solr.common.SolrException:org.apache.solr.common.SolrException:
无法为核心yirmi加载conf:插件初始化失败 [schema.xml] fieldType“ text_zh”:[schema.xml]的插件初始化失败 分析器/令牌器:错误加载类 'solr.HMMChineseTokenizerFactory'。架构文件为 /var/solr/data/yirmi/conf/schema.xml solr:org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: 无法为核心solr加载conf:从加载solr config时出错 /var/solr/data/solr/conf/solrconfig.xml
如何安装必要的插件以使schema.xml中的更改生效?
答案 0 :(得分:1)
首先,请确保已添加库文件(lucene-analyzers-smartcn-x.y.z.jar
中的contrib\analysis-extras\lucene-libs
文件)to your lib
statement in solrconfig.xml
。
Solr的启动日志应显示正在加载的库文件。
如果出现错误
创建SolrCore'yirmi'时出错:无法创建核心[yirmi]原因:无法在自定义分析器类
positionIncrementGap
上设置org.apache.lucene.analysis.cn.smart.SmartChineseAnalyze
删除该字段类型的positionIncrementGap
设置,因为该设置对自定义分析器无效(这是有效的)。