lucene删除某个索引的问题
我想问下
public static void deleteOneIndex(String indexDir, Analyzer analyzer,
String field, String key) {
try {
Directory dir = new SimpleFSDirectory(new File(indexDir));
IndexWriter indexWriter = new IndexWriter(dir, analyzer, false,
IndexWriter.MaxFieldLength.UNLIMITED);
indexWriter.deleteDocuments(new Term(field, key));
indexWriter.optimize();
indexWriter.commit();
System.out.println("是否删除成功=" + indexWriter.hasDeletions());
System.out.println("一共有" + indexWriter.maxDoc() + "索引");
System.out.println("还剩" + indexWriter.numDocs() + "索引");
indexWriter.close();
} catch (IOException e) {
System.out.println(" caught a " + e.getClass()
+ "\n with message: " + e.getMessage());
}
}
这样为什么没有删除掉我想删除的索引
例如:deleteOneIndex("D:\\logs\\lucenedoc",new StandardAnalyzer(Version.LUCENE_33),"name","张三");
没有分了 希望指点下,不胜感激!!