热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

EdgeNGram:实例化类时出错:'org.apache.lucene.analysis.ngram.EdgeNGramFilterFactory'

如何解决《EdgeNGram:实例化类时出错:'org.apache.lucene.analysis.ngram.EdgeNGramFilterFactory'》经验,为你挑选了1个好方法。

我已经设置了Solr,到目前为止所有的工作都只是花花公子,但现在我想在我的搜索中添加EdgeNGram功能.但是,只要我将它扔进我的schema.xml,它就会开始抛出错误:

org.apache.solr.common.SolrException:org.apache.solr.common.SolrException:
Could not load conf for core collection1: Plugin init failure for [schema.xml] 
fieldType "text_en_splitting": Plugin init failure for [schema.xml] analyzer/filter: 
Error instantiating class: 'org.apache.lucene.analysis.ngram.EdgeNGramFilterFactory'. 
Schema file is /opt/solr/server/solr/collection1/conf/schema.xml 

相关的架构部分如下所示:


其他fieldType的配置很好,因为我已经相当广泛地测试了它.它只是添加这一行抛出错误.

现在,我已经做了一些环顾四周,通常情况下,这些错误意味着缺少一个.jar(至少根据这里发布的其他两个问题,特别是与NGram无关).所以我继续挖掘lucene-analyzers-common.jar并在我的solrconfig.xml中明确添加它,如下所示:


没运气.我知道路径很好,我就是这样包含了mysql_connector.无论如何,我已经厌倦了这个错误,所以我继续前进并包括我可以挖掘的每一个.jar:


Nope.jpg

当然,所有这些都伴随着许多bin/solr stop -all并启动,所有这些仍然在Solr Admin中为我提供漂亮的红色横幅.我在Solr 5.0.0上

救命?



1> 2fat2kidnap..:

嗯,这很尴尬,但这是发生在我身上的典型事情.我发布这个问题后不到5分钟,我就把错误消失了[注意我说"错误消失",我没有说"我解决了",因为我还没有完全测试它].

无论如何,在我的过滤器标签中,您会看到该side="front"标签?是的,显然是个坏主意.虽然这很奇怪,因为我发现在apache docs:https://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#solr.EdgeNGramFilterFactory中,我没有补上或其他什么.

有谁能解释一下?


它在Solr 4.4中被标记为已弃用,并在5.0中被删除.所以它基本上是文档中的一个错误.请看这里:https://cwiki.apache.org/confluence/display/solr/Filter+Descriptions#FilterDescriptions-EdgeN-GramFilter
推荐阅读
author-avatar
henrysong
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有