как удалить документы, используя термин в люцене - PullRequest
3 голосов
/ 25 октября 2010

Я пытаюсь удалить документ, используя термин в lucene index.но код, который я сделал ниже, не работает.Есть ли какие-либо предложения о том, как я могу выполнить удаление функции в люценовом индексе?

public class DocumentDelete {
public static void main(String[] args) {
File indexDir = new File("C:/Users/Raden/Documents/lucene/LuceneHibernate/adi");
Term term = new Term(FIELD_PATH, "compatible");
Directory directory = FSDirectory.getDirectory(indexDir);
IndexReader indexReader = IndexReader.open(directory);
indexReader.deleteDocuments(term);
indexReader.close();        
}
}

1 Ответ

2 голосов
/ 10 января 2011
IndexReader indexReader = IndexReader.open(directory); // this one uses default readonly mode

Вместо этого используйте это:

IndexReader indexReader = IndexReader.open(directory, false); // this will open the index in edit mode and you can delete the index. . . 

Таким образом, вам не нужно никакого дополнительного инструмента для удаления содержимого индекса.,.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...