我正在开发一个基于与 SOLR(版本 6.6.6)连接的 ez Platform CMS 的项目。(更多详情: https ://doc.ezplatform.com/en/2.5/guide/search/solr/ )
现在我正在尝试配置 Solr 来处理特殊字符(尤其是波兰语)的排序。
我发现我需要solr.CollationKeyFilterFactory
像这样将过滤器添加到我的托管模式中:
<!-- sorl/server/ez/myappcore/conf/managed-schema -->
<fieldType name="string" class="solr.TextField" sortMissingLast="true">
<analyzer>
<tokenizer class="solr.KeywordTokenizerFactory" />
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.CollationKeyFilterFactory" language="pl" country="PL" strength="primary" />
</analyzer>
</fieldType>
<lib>
然后通过添加到下一个加载所需的罐子solrconfig.xml
:
<!-- sorl/server/ez/myappcore/conf/solrconfig.xml -->
<config>
<luceneMatchVersion>6.6.6</luceneMatchVersion>
<lib dir="${solr.install.dir:../../../..}/contrib/extraction/lib" regex=".*\.jar" />
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-cell-\d.*\.jar" />
<lib dir="${solr.install.dir:../../../..}/contrib/clustering/lib/" regex=".*\.jar" />
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-clustering-\d.*\.jar" />
<lib dir="${solr.install.dir:../../../..}/contrib/langid/lib/" regex=".*\.jar" />
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-langid-\d.*\.jar" />
<lib dir="${solr.install.dir:../../../..}/contrib/velocity/lib" regex=".*\.jar" />
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-velocity-\d.*\.jar" />
<!-- added libs below -->
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-analysis-extras-\d.*\.jar" />
<lib dir="${solr.install.dir:../../../..}/contrib/analysis-extras/lib/" regex="morfologik-\w*-\d.*\.jar" />
<lib dir="${solr.install.dir:../../../..}/contrib/analysis-extras/lucene-libs/" regex="lucene-analyzers-morfologik-\d.*\.jar" />
<!-- rest of config ... -->
</config>
但是bin/solr stop -p 8983 && bin/solr -s ez
在仪表板(http://localhost:8983/solr/
)中重新启动 Solr()后,我收到错误消息:
myappcore:org.apache.solr.common.SolrException:org.apache.solr.common.SolrException:无法为核心加载conf myappcore:无法加载架构/Users/maciek/Sites/solr/solr-6.6.6/ server/ez/myappcore/conf/managed-schema:[schema.xml] 字段类型“字符串”的插件初始化失败:[schema.xml] 分析器/过滤器的插件初始化失败:加载类“solr.CollationKeyFilterFactory”时出错
我认为缺少或未加载其中一个罐子(Error loading class 'solr.CollationKeyFilterFactory'
)存在问题,但我不知道我错在哪里......
所以请帮忙,因为我花了几个小时在互联网上搜索任何信息并随机尝试......
非常感谢!;)