首页 / 知识
对Java Lucene忽略字段进行故障排除
2023-04-14 03:11:00

Troubleshoot Java Lucene ignoring Field我们目前正在使用Lucene 2.1.0进行站点搜索,但是遇到了一个难题:在目标搜索过程中,我们的索引字段之一被忽略了。 这是将字段添加到索引中的文档的代码:
对索引运行查询(*)将返回以下结果:
运行目标查询:
找不到任何结果。 我意识到这是一个非常具体的问题,因为我是Lucene新手,所以我只是想获取有关从哪里开始调试此问题的信息。 更新 已安装Luke,签出最新索引...可以在搜索中找到field market_local,因此如果执行以下操作:
搜索正常(在Luke中)。 我现在要检查分析器代码,有什么办法可以解决这个问题,以至于我们的搜索应用程序使用的是Lucene 2.1.0,而最新版本的Luke使用的是2.3.0? 对于调试Lucene,最好的工具是Luke,它可以让您在索引本身中四处查看,以查看被索引的内容,执行搜索等。我建议下载该工具,将其指向您的索引,然后查看其中的内容。 "为什么我没有获得成功?"部分Lucene FAQ中的一些建议可能会有用。您使用的是Field.Index.UN_TOKENIZED,因此不会将任何分析器用于索引(我认为)。如果在搜索时使用分析器,则可能是问题的根源-索引和搜索分析器应该相同,以确保获得正确的结果。 Luke与Lucene捆绑在一起,但是您可以告诉Luke使用另一个版本的Lucene。说" lucene-core-2.1.0.jar"包含要使用的Lucene 2.1.0," luke.jar"包含Luke和Lucene 2.3.0。然后,您可以使用以下命令启动Luke。
(技巧是将您的Lucene版本放在Luke之前的类路径上。而且,这在Windows上。在Unix上,将";"替换为":"。) 如您所知,卢克
被重写为
如果调用了Query对象的rewrite(IndexReader)方法。这两个查询应等效,因此2.1中可能存在错误。如果必须使用2.1,则可以尝试在将Query对象传递给IndexSearcher之前手动调用该方法。 另一个简单的操作是使用调试器或日志记录语句来检查
确保它是您所想的。 |
最新内容
相关内容
linux使用索引命令?
linux使用索引命令?,名称,系统,命令,文件,环境,工作,位置,目录,文件名,索引,在linux中如何用命令查找文件在哪1、使用查找命令 “find”命令允linux提取字段串命令?
linux提取字段串命令?,数字,字符串,状态,工具,命令,文件,范本,样式,正则,字段,linux如何获取两个字符串之间的内容?1、在 Linux 中,您可以使用linux命令搜索大全?
linux命令搜索大全?,地址,工作,系统,命令,管理,目录,标准,基础,工具,网络,linux命令大全linux常用命令有pwd命令、cd命令、ls命令、cat命令、glinux搜索过去命令?
linux搜索过去命令?,系统,信息,命令,名称,工作,预期,数字,地址,标准,服务,Linux系统中怎么搜索文件命令大全grep命令 grep是一个强大的文本搜linux命令搜索命令?
linux命令搜索命令?,系统,位置,地址,标准,管理,信息,命令,名称,工作,文件,Linux下Grep命令的详细使用方法?查找root目录下包含Linux的文件,命令linux日志搜索命令?
linux日志搜索命令?,信息,系统,对比,工具,一致,日志,文件,命令,实时,网络,linux查看日志的命令是?具体怎么用第一种:查看实时变化的日志(比较吃linux命令字符搜索?
linux命令字符搜索?,系统,工具,命令,灵活,信息,工作,字符串,文本,文件,模式,linux命令grep1、在linux中grep命令是非常有用的,它和管道(|)配合linux刷新索引的命令?
linux刷新索引的命令?,系统,工作,工具,管理,软件,设计,状态,基础,命令,预期,【Linux操作】---终端神器tmux一般使用命令和快捷键进行操作,可在linux搜索筛选命令?
linux搜索筛选命令?,系统,数字,电脑,盘后,盘中,工具,信息,文件,命令,字符,在linux系统如何grep过滤中,不包含某些字符1、./delete_lines.sh filinux搜索日志的命令?
linux搜索日志的命令?,实时,信息,系统,对比,最新,情况,日志,命令,地方,数据,下面哪个是linux动态查看最新100行日志的方式?使用tail -f可以查linux全局搜索命令?
linux全局搜索命令?,系统,工具,命令,灵活,信息,工作,字符串,文件,全局,字符,Linux常用指令---grep(搜索过滤)(转)Linux系统中grep命令是一种强linux命令搜索值高亮?
linux命令搜索值高亮?,包装,网上,环境,命令,颜色,文件,语法,终端,界面,方法,linux中shell界面下可以令某些特定字符高亮显示吗?1、一种思路就