我们目前正在使用 Lucene 2.1.0 进行站点搜索,但遇到了一个难题:在目标搜索期间,我们的一个索引字段被忽略了。以下是将字段添加到我们索引中的文档的代码:
// Add market_local to index
contactDocument.add(
new Field(
"market_local"
, StringUtils.objectToString(
currClip.get(
"market_local"
)
)
, Field.Store.YES
, Field.Index.UN_TOKENIZED
)
);
对索引运行查询 ( * ) 将返回以下结果:
Result 1:
title: Foo Bar
market_local: Local
Result 2:
title: Bar Foo
market_local: National
运行有针对性的查询:
+( market_local:Local )
不会找到任何结果。
我意识到这是一个非常具体的问题,我只是想获取有关从何处开始调试此问题的信息,因为我是 Lucene 新手。
更新
安装卢克,检查最新索引...字段market_local在搜索中可用,所以如果我执行类似的操作:
market_local:Local
搜索工作正常(在卢克)。我现在正在检查我们的分析器代码,有什么办法可以将这个问题归结为我们的搜索应用程序使用的是 Lucene 2.1.0 而最新版本的 Luke 使用的是 2.3.0 的事实?