lucene的writer.addDocument()报空指针

艺术的姿态 2016-08-09 06:14:41

writer.addDocument(doc); 报nullpoint,是怎么回事啊
getDocument(file)具体代码:

//获取文档,文档里再设置每个字段,就类似于数据库中的一行记录
private Document getDocument(File file) throws Exception{
Document doc = new Document();
//添加字段
doc.add(new TextField("contents", new FileReader(file))); //添加内容
doc.add(new TextField("fileName", file.getName(), Field.Store.YES)); //添加文件名,并把这个字段存到索引文件里
doc.add(new TextField("fullPath", file.getCanonicalPath(), Field.Store.YES)); //添加文件路径
return doc;
}

报错信息:

java.lang.NullPointerException
at org.apache.lucene.analysis.standard.StandardTokenizer.init(StandardTokenizer.java:144)
at org.apache.lucene.analysis.standard.StandardTokenizer.<init>(StandardTokenizer.java:131)
at org.apache.lucene.analysis.standard.StandardAnalyzer.createComponents(StandardAnalyzer.java:111)
at org.apache.lucene.analysis.Analyzer.tokenStream(Analyzer.java:142)
at org.apache.lucene.document.Field.tokenStream(Field.java:550)
at org.apache.lucene.index.DocInverterPerField.processFields(DocInverterPerField.java:95)
at org.apache.lucene.index.DocFieldProcessor.processDocument(DocFieldProcessor.java:248)
at org.apache.lucene.index.DocumentsWriterPerThread.updateDocument(DocumentsWriterPerThread.java:253)
at org.apache.lucene.index.DocumentsWriter.updateDocument(DocumentsWriter.java:453)
at org.apache.lucene.index.IndexWriter.updateDocument(IndexWriter.java:1520)
at org.apache.lucene.index.IndexWriter.addDocument(IndexWriter.java:1190)
at org.apache.lucene.index.IndexWriter.addDocument(IndexWriter.java:1171)
at Indexer.indexFile(Indexer.java:49)
at Indexer.indexAll(Indexer.java:39)
at Indexer.main(Indexer.java:70)
...全文
200 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

50,528

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧