Lucene_36 - 无法解析或不是字段
Lucene_36 - Cannot be resolved or is not a field
我正在尝试在我的程序中使用 Lucene 来删除停用词并实施词干提取?但是,当我尝试像这样导入 Lucene_36
时...
public String removeStopWords(){
StandardAnalyzer analyser = new StandardAnalyzer(Version.LUCENE_36);
Analyzer analyzer = new StopAnalyzer(Version.LUCENE_36);
TokenStream tokenStream = new StandardTokenizer(Version.LUCENE_36,new StringReader(GetTweets.tweetContent));
StringBuilder sb = new StringBuilder();
tokenStream = new StopFilter(Version.LUCENE_36, tokenStream, StandardAnalyzer.STOP_WORDS_SET);
CharTermAttribute token = tokenStream.getAttribute(CharTermAttribute.class);
它 returns Lucene_36
部分代码下面的错误说 Lucene_36 - Cannot be resolved or is not a field
。
有什么帮助吗?
谢谢大家
if I do Version.LUCENE_CURRENT this does not work either
为什么因为它已从 5.4.1 中弃用 API。
static Version LUCENE_CURRENT
Deprecated. Use LATEST
public static final Version LATEST
例如:
Version.LATEST
或
Version.LUCENE_5_4_1
自 3.6 版以来,API 发生了很多变化。 Lucene 3.6 的向后兼容性在 5.0 版中被删除,除此之外,none 这些构造函数不再采用 Version
个参数。
我不太确定你是如何使用分析器的,以及你在这里构建的分析器,但这里有一个快速重写,至少应该编译:
public String removeStopWords(){
StandardAnalyzer analyser = new StandardAnalyzer();
Analyzer analyzer = new StopAnalyzer();
Tokenizer tokenizer = new StandardTokenizer();
tokenizer.setReader(new StringReader(GetTweets.tweetContent));
TokenStream tokenStream = tokenizer;
StringBuilder sb = new StringBuilder();
tokenStream = new StopFilter(tokenStream, StandardAnalyzer.STOP_WORDS_SET);
CharTermAttribute token = tokenStream.getAttribute(CharTermAttribute.class);
我正在尝试在我的程序中使用 Lucene 来删除停用词并实施词干提取?但是,当我尝试像这样导入 Lucene_36
时...
public String removeStopWords(){
StandardAnalyzer analyser = new StandardAnalyzer(Version.LUCENE_36);
Analyzer analyzer = new StopAnalyzer(Version.LUCENE_36);
TokenStream tokenStream = new StandardTokenizer(Version.LUCENE_36,new StringReader(GetTweets.tweetContent));
StringBuilder sb = new StringBuilder();
tokenStream = new StopFilter(Version.LUCENE_36, tokenStream, StandardAnalyzer.STOP_WORDS_SET);
CharTermAttribute token = tokenStream.getAttribute(CharTermAttribute.class);
它 returns Lucene_36
部分代码下面的错误说 Lucene_36 - Cannot be resolved or is not a field
。
有什么帮助吗?
谢谢大家
if I do Version.LUCENE_CURRENT this does not work either
为什么因为它已从 5.4.1 中弃用 API。
static Version LUCENE_CURRENT
Deprecated. Use LATEST
public static final Version LATEST
例如:
Version.LATEST
或
Version.LUCENE_5_4_1
自 3.6 版以来,API 发生了很多变化。 Lucene 3.6 的向后兼容性在 5.0 版中被删除,除此之外,none 这些构造函数不再采用 Version
个参数。
我不太确定你是如何使用分析器的,以及你在这里构建的分析器,但这里有一个快速重写,至少应该编译:
public String removeStopWords(){
StandardAnalyzer analyser = new StandardAnalyzer();
Analyzer analyzer = new StopAnalyzer();
Tokenizer tokenizer = new StandardTokenizer();
tokenizer.setReader(new StringReader(GetTweets.tweetContent));
TokenStream tokenStream = tokenizer;
StringBuilder sb = new StringBuilder();
tokenStream = new StopFilter(tokenStream, StandardAnalyzer.STOP_WORDS_SET);
CharTermAttribute token = tokenStream.getAttribute(CharTermAttribute.class);