`

IKAnalyzer3.2.0 Stable版使用自定义词典出现数组下标越界异常

阅读更多

使用环境:

Solr1.4

Lucene2.9.1 或 Lucene2.9.2 或 Lucene2.9.3

 

出错过程:

根据IKAnalyzer3.X官方手册,配置自定义词典,在启动时报错如下,把自定义词典移除,异常不再就不出现。

2010-7-22 9:51:15 org.apache.solr.common.SolrException log
严重: java.lang.ExceptionInInitializerError
        at org.wltea.analyzer.seg.ChineseSegmenter.<init>(ChineseSegmenter.java:37)
        at org.wltea.analyzer.cfg.Configuration.loadSegmenter(Configuration.java:114)
        at org.wltea.analyzer.IKSegmentation.<init>(IKSegmentation.java:54)
        at org.wltea.analyzer.lucene.IKTokenizer.<init>(IKTokenizer.java:44)
        at org.wltea.analyzer.solr.IKTokenizerFactory.create(IKTokenizerFactory.java:45)
        at org.apache.solr.analysis.TokenizerChain.getStream(TokenizerChain.java:69)
        at org.apache.solr.analysis.SolrAnalyzer.reusableTokenStream(SolrAnalyzer.java:74)
        at org.apache.solr.schema.IndexSchema$SolrIndexAnalyzer.reusableTokenStream(IndexSchema.java:364)
        at org.apache.lucene.queryParser.QueryParser.getFieldQuery(QueryParser.java:567)
        at org.apache.solr.search.SolrQueryParser.getFieldQuery(SolrQueryParser.java:153)
        at org.apache.lucene.queryParser.QueryParser.Term(QueryParser.java:1449)
        at org.apache.lucene.queryParser.QueryParser.Clause(QueryParser.java:1337)
        at org.apache.lucene.queryParser.QueryParser.Query(QueryParser.java:1265)
        at org.apache.lucene.queryParser.QueryParser.TopLevelQuery(QueryParser.java:1254)
        at org.apache.lucene.queryParser.QueryParser.parse(QueryParser.java:200)
        at org.apache.solr.search.LuceneQParser.parse(LuceneQParserPlugin.java:78)
        at org.apache.solr.search.QParser.getQuery(QParser.java:131)
        at org.apache.solr.handler.component.QueryComponent.prepare(QueryComponent.java:89)
        at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:174)
        at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:131)
        at org.apache.solr.core.SolrCore.execute(SolrCore.java:1316)
        at org.apache.solr.core.QuerySenderListener.newSearcher(QuerySenderListener.java:52)
        at org.apache.solr.core.SolrCore$3.call(SolrCore.java:1146)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
        at org.wltea.analyzer.dic.DictSegment.fillSegment(DictSegment.java:139)
        at org.wltea.analyzer.dic.DictSegment.fillSegment(DictSegment.java:128)
        at org.wltea.analyzer.dic.Dictionary.loadMainDict(Dictionary.java:134)
        at org.wltea.analyzer.dic.Dictionary.<init>(Dictionary.java:71)
        at org.wltea.analyzer.dic.Dictionary.<clinit>(Dictionary.java:41)
        ... 28 more

 

从官网下载源代码,重新编译然后打包,替换原来的包,启动后异常不再出现。

 

==============================

2010.07.26

今天问题再次出现,用Lucene2.9.3替换Lucene2.9.1 或Lucene2.9.2后,问题暂时解决

 

分享到:
评论

相关推荐

    IKAnalyzer中文分词器V3.2.0

    在IKAnalyzer3.2.0Stable_bin压缩包中,词典文件是分词的基础。这些文件包含了大量预定义的中文词汇,用于快速定位和识别单词。配置文件则允许用户调整分词器的行为,如停用词的设置、分词模式的选择等。合理的配置...

    IKAnalyzer3.2.5Stable.jar

    在标题中的"IKAnalyzer3.2.5Stable.jar"指的是该软件的特定版本,即3.2.5稳定版的Java档案文件(JAR)。这种格式的文件通常包含了IKAnalyzer的所有源代码、类文件和其他资源,使得用户可以直接引入到自己的项目中...

    IKAnalyzer3.2.0.zip

    年 12 月推出 1.0 版开始, IKAnalyzer 已经推出了 3 个大版本。最初,它是以开源项目 Luence 为应用主体的,结合词典分词和文法分析算法的中文分词组件。新版本的 IK Analyzer 3.X 则发展为面向 Java 的公用分词...

    IKAnalyzer3.2.5Stable

    IKAnalyzer 非常不错的分词器,JAVA版本

    Ikanalyzer分词器动态自定义词库的方法.doc

    IKAnalyzer动态自定义词库的方法 IKAnalyzer是java语言中一个流行的分词器工具,能够对中文文本进行分词操作。分词是自然语言处理(NLP)中的一项基本操作,用于将文本分割成单个词语,以便进行进一步的处理和分析...

    IKAnalyzer配置文件、扩展词典和停用词词典.zip

    IKAnalyzer不仅支持自定义词典,还支持动态加载词典,这使得它在处理不同场景、不同领域文本时具有很好的适应性。此外,IKAnalyzer还具有较好的性能和稳定性,广泛应用于搜索引擎、日志分析、情感分析等多个领域。 ...

    IKAnalyzer3.2.5Stable_bin.zip中文分词

    4. **IKAnalyzer.cfg.xml**:这是IKAnalyzer的配置文件,用户可以根据需要在这里配置分词器的行为,比如设置自定义词典路径、停用词列表、分词模式等。通过修改配置文件,可以灵活调整分词效果,以适应不同的应用...

    IKAnalyzer中文分词器文档和Jar包

    3. 扩展性:IKAnalyzer支持自定义扩展词典,允许用户在运行时添加新的词汇,适应不断变化的语言环境,特别适合处理新出现的网络热词。 4. 支持新词发现:内置的动态词典更新机制,可以在索引过程中学习并添加新词,...

    IKAnalyzer中文分词器 v3.2.0 源码包

    3. **扩展性设计**:学习IKAnalyzer的插件机制,如何编写和使用扩展插件,以支持自定义分词规则或特殊分词需求。 4. **性能优化**:探究 IKAnalyzer 在处理大数据量时的性能优化手段,如缓存策略、多线程处理等。 ...

    使用IK Analyzer实现中文分词之Java实现

    从 2006年 12 月推出 1.0 版开始, IKAnalyzer 已经推出了 4 个大版本。最初,它是以开源项目Luence 为应用主体的,结合词典分词和文法分析算法的中文分词组件。 从 3.0 版本开始,IK 发展为面向 Java 的公用分词...

    IKAnalyzer 支持高版本最新Lucene 5.x、6.x、7.x

    - IKAnalyzer支持Lucene的高版本,意味着用户在使用新版本的Lucene时,可以无缝集成IKAnalyzer,从而实现高效的中文分词,提升搜索质量。 3. **Lucene 5.x、6.x、7.x的关键特性**: - Lucene 5.x引入了新的Doc...

    IKAnalyzer3.2.8 source,IKAnalyzer中文分词器V3.2.0使用手册

    IKAnalyzer3.2.0使用手册是学习和使用该分词器的重要参考资料。手册通常会包含以下内容:安装步骤、配置说明、API介绍、示例代码以及常见问题解答。通过阅读手册,开发者可以快速掌握如何在项目中集成IKAnalyzer,...

    IKAnalyzer中文分词器V3.2使用

    首先,你需要从官方源或者第三方资源获取IKAnalyzer3.2.0Stable的压缩包,解压后你会得到包含分词器核心库和配置文件的目录结构。将这些库文件添加到你的项目类路径中,确保程序可以正常加载。 **2. 分词器核心组件...

    IKAnalyzer6.5.0.jar

    1. **分词算法**:IK Analyzer 使用了基于正向最大匹配(Forward Maximum Matching, FMM)和逆向最大匹配(Backward Maximum Matching, BMM)的混合策略进行分词,同时支持用户自定义词典和动态扩展词典,以适应不断...

    IKAnalyzer3.1.1Stable_AllInOne

    IKAnalyzer3.1.1Stable_AllInOne是一款流行的中文分词工具,广泛应用于信息检索、文本挖掘等领域。它是基于Java开发的,旨在提供高效、灵活的中文分词解决方案。这款分词器以其稳定性、准确性和易用性而受到开发者们...

    IKAnalyzer2012_u6

    1. **词典管理**:IKAnalyzer的性能很大程度上取决于词典的质量,因此定期更新词典或根据需求自定义词典是必要的。 2. **分词模式**:IKAnalyzer提供了两种分词模式——“精确模式”和“全模式”,前者尽可能保证...

    IKAnalyzer中文分词器 3.2.0 稳定版

    从2006年12月推出1.0版开始,IKAnalyzer已经推出了3个大版本。最初,它是以开源项目Luence为应用主体的,结合词典分词和文法分析算法的中文分词组件。新版本的IKAnalyzer3.0则发展为面向Java的公用分词组件,独立于...

    IkAnalyzer分词、词频、内链优化

    总结来说,IkAnalyzer作为一款强大的中文分词工具,其在分词准确性、自定义词典和内链优化等方面的优秀特性,使其成为企业和开发者在信息处理领域的得力助手。通过深入理解和合理运用IkAnalyzer,我们可以有效地提升...

    IKAnalyzer2012完整分发包

    1. 《IKAnalyzer中文分词器V2012使用手册》(即本文档) 2. IKAnalyzer2012.jar(主jar包) 3. IKAnalyzer.cfg.xml(分词器扩展配置文件) 4. stopword.dic(停止词典) 5. LICENSE.TXT ; NOTICE.TXT (apache...

    ikanalyzer-solr.zip

    ikanalyzer的分词策略主要依赖于词典,词典中包含了大量预定义的词汇,同时也支持自定义词典。此外,ikanalyzer还提供了基于词频的动态学习机制,能根据用户数据自动学习新词,提高分词的准确性。同时,ikanalyzer...

Global site tag (gtag.js) - Google Analytics