加载庖丁分词器的时候,出现了下面的错误:
net.paoding.analysis.exception.PaodingAnalysisException: please set a system env PAODING_DIC_HOME or Config paoding.dic.home in paoding-dic-home.properties point to the dictionaries!
at net.paoding.analysis.knife.PaodingMaker.setDicHomeProperties(PaodingMaker.java:329)
at net.paoding.analysis.knife.PaodingMaker.getDicHome(PaodingMaker.java:270)
at net.paoding.analysis.knife.PaodingMaker.loadProperties(PaodingMaker.java:198)
at net.paoding.analysis.knife.PaodingMaker.loadProperties(PaodingMaker.java:237)
at net.paoding.analysis.knife.PaodingMaker.loadProperties(PaodingMaker.java:237)
at net.paoding.analysis.knife.PaodingMaker.getProperties(PaodingMaker.java:135)
at net.paoding.analysis.analyzer.PaodingAnalyzer.init(PaodingAnalyzer.java:70)
at net.paoding.analysis.analyzer.PaodingAnalyzer.<init>(PaodingAnalyzer.java:59)
at net.paoding.analysis.analyzer.PaodingAnalyzer.<init>(PaodingAnalyzer.java:52)
at org.apache.nutch.analysis.NutchDocumentAnalyzer.<init>(NutchDocumentAnalyzer.java:65)
at org.apache.nutch.analysis.AnalyzerFactory.<init>(AnalyzerFactory.java:50)
at org.apache.nutch.indexer.lucene.LuceneWriter.open(LuceneWriter.java:218)
at org.apache.nutch.indexer.IndexerOutputFormat.getRecordWriter(IndexerOutputFormat.java:42)
at org.apache.hadoop.mapred.ReduceTask.runOldReducer(ReduceTask.java:433)
at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:411)
at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:216)
提示没有配置好paoding-dic-home.properties路径,程序中已经将庖丁的所有配置文件放到配置文件夹conf中了,只能说明配置文件放错了地方,从网上看到可以将paoding-dic-home.properties放到src中,按照他的说明将该配置文件放到了src中,问题果然得到了解决。
总体来看,程序需要的配置文件可以放的地方很少,例如专门的配置文件文件夹(conf),或者调用配置文件程序的包中,或者src目录下,所以下次再遇到配置文件找不到的问题,可以多试几个地方,总有一个适合你哈哈。