2012-06-21 39 views

回答

9

Lucene的3:

+4

這不適用於Lucene 4.0.0 ... – RobAu

16

在Lucene的4(和5):

Terms terms = SlowCompositeReaderWrapper.wrap(directoryReader).terms("field"); 

編輯:

這似乎是 '正確的' 現在的方式(Lucene的6及以上):

LuceneDictionary ld = new LuceneDictionary(indexReader, "field"); 
BytesRefIterator iterator = ld.getWordsIterator(); 
BytesRef byteRef = null; 
while ((byteRef = iterator.next()) != null) 
{ 
    String term = byteRef.utf8ToString(); 
} 
+1

假設字段名是'「字段」。「在Jackrabbit中,它是」_:FULLTEXT「。' – EJP

+0

@Rob Au'SlowCompositeReaderWrapper'現在在6.1.0中已棄用。你會知道如何在6.4.1中做到這一點? – Sundeep

+3

Lucene團隊似乎在不更新Javadoc的情況下會將人們棄用於新的方式或方法,而是貶低某些東西的壞習慣! – Robert