會員註冊 / 登入  |  電腦版  |  Jump to bottom of page

網頁程式設計 Web Development » 看書做一個 Lucene 提供的 index 可是... 出現5個bug可是卻不知道是哪邊打錯了?

發表人: crc2121, 九級學員
2011-01-17 16:34:32
看書做一個 Lucene 提供的 index 可是... 出現5個bug可是卻不知道是哪邊打錯了?
可以請前輩指導一下嗎?

感激不盡<(_ _)>

圖片如下:
http://img130.imageshack.us/f/bug01.jpg/


程式碼如下:

import java.io.File;
import java.io.FileReader;
import java.io.Reader;
import java.io.FileFilter;
import java.util.Date;
import org.apache.lucene.analysis.*;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.index.IndexWriter;

public class TxtFileIndex
{
public static void main(String[] args) throws Exception
{
File dataDir = new File("C:\\IR\\IR_TEST");
File indexDir = new File("C:\\IR\\IR_index");

Analyzer luceneAnalyzer = new StandardAnalyzer();
File[] dataFiles = dataDir.listFiles();

IndexWriter indexWriter = new IndexWriter(indexDir,luceneAnalyzer,true);

long startTime = new Date().getTime();
for (int i=0;i<dataFiles.length;i++)
{
if(dataFiles[i].isFile() && dataFiles[i].getName().endsWith(".txt"))
{
System.out.println("Idx"+dataFiles[i].getCanonicalPath());

Document document = Document();
Reader txtReader = new FileReader(dataFiles[i]);
document.add(new Field("path", dataFiles[i].getCanonicalPath(), Field.Store.YES, Field.Index.UN_TOKENIZED));
document.add(new Field("contents, txtReader"));
}
}
indexWriter.optimize();
indexWriter.close();
long endTime = new Date().getTime();

System.out.println("It take "+ (endTime - startTime) + "milliseconds to create index for the files in directory." + dataDir.getPath());

}
}

發表人: andowson, 七段學員
2011-01-18 18:33:46
乍看之下應該是CLASSPATH內找不到相關的jar檔,你有下載Lucene需要的jar檔嗎?

發表人: crc2121, 九級學員
2011-01-19 14:30:33
已修正完~




會員註冊 / 登入  |  電腦版  |  Jump to top of page