【发布时间】:2014-05-02 11:00:45
【问题描述】:
我有很多短信,我在代码行下面为它们运行。
// 标记术语
TokenStream tokenStream = new ClassicTokenizer(LUCENE_VERSION, new StringReader(term));
// 词干化
tokenStream = new PorterStemFilter(tokenStream);
有时我得到以下错误,有时没有:
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00000000025f8360, pid=1688, tid=7492
#
# JRE version: 7.0-b147
# Java VM: Java HotSpot(TM) 64-Bit Server VM (21.0-b17 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# J org.apache.lucene.analysis.PorterStemmer.stem(I)Z
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
我该怎么办?
【问题讨论】:
-
您是否尝试过使用像 EnglishAnalyzer - lucene.apache.org/core/4_7_0/analyzers-common/org/apache/lucene/… 这样的分析器,它会为您进行词干化和标记化?
-
我在上面的代码之前有这一行: tokenStream = new StopFilter(LUCENE_VERSION, tokenStream, EnglishAnalyzer.getDefaultStopSet());但是当我打印这些条款时,它们并没有被词干化!所以我使用上面的代码进行词干化。
标签: java lucene stemming porter-stemmer