我正在创建一个lucene搜索应用程序,我使用了不同分析器和各自indexSearcher的indexWriter的多个实例,但是返回的搜索结果是空的,即使我知道我已经索引了我正在搜索的特定单词。
这是我的SearchEngine类构造函数
this.indexers = new ArrayList<StandardIndexer>();
this.indexers.add(new StandardIndexer(new StandardAnalyzer()));
this.indexers.add(new StandardIndexer(new EnglishStemAnalyzer()));
this.indexers.add(new StandardIndexer(new KeywordAnalyzer()));
this.indexers.add(new StandardIndexer(new EnglishSynonymAnalyzer()));
this.indexers.add(new StandardIndexer(new EnglishSynonymStemAnalyzer()));
this.indexers.add(new StandardIndexer(new EnglishSynonymKeywordAnalyzer()));
this.searchers = new ArrayList<StandardSearcher>();
for (StandardIndexer indexer : this.indexers) {
this.searchers.add(new StandardSearcher(indexer));
}
StandardIndexer和StandardSearcher是我的索引器和搜索器的实现,因为我们可以看到indexer的实例用于创建indexSearcher,因此所使用的分析器的目录和类型也在索引器和搜索器对之间共享
答案 0 :(得分:0)
您的问题是关于未知代码中的已知错误。
所以我写一般: