我正在使用Lucene 7.3.1。为了允许在我的自定义收集器中尽早终止,我正在尝试在索引编制时按特定顺序存储文档。目的是按照我的收藏家的collect方法中的顺序将它们退回
我添加了一个用于对所有文档进行排序的字段
doc.add(new SortedDocValuesField("mySort", new BytesRef(value)));
我的indexWriter定义为
IndexWriterConfig conf = new IndexWriterConfig(analyzer);
conf.setIndexSort(new Sort(new SortField("mySort", SortField.Type.STRING)));
indexWriter = new IndexWriter(directory, conf);
然后在搜索时
indexReader.search(query, myCollector);
我希望在myCollector的accept方法中,以mySort顺序接收匹配的文档,但是它们仍按docId排序
我已经看到在旧版本的Lucene中可以做到这一点的示例,我试图将其转换为Lucene 7,但仍然无法正常工作
我做错了什么? 谢谢