2017-04-04 111 views
0

我正在使用StanfordCoreNLP库(stanford-corenlp.jar),并且在执行下面几行代码时出现错误。StanfordCoreNLP错误:未找到此类训练过的标记器配置文件

protected StanfordCoreNLP pipeline; 

public LemmatizerHelper() { 
    Properties props; 
    props = new Properties(); 
    props.put("annotators", "tokenize,ssplit,pos,lemma,ner,parse,dcoref"); 

    this.pipeline = new StanfordCoreNLP(props); // Error occurs from this line 
} 

这是我得到的错误。

Adding annotator tokenize 
Adding annotator ssplit 
Adding annotator pos 
Loading POS Model [edu/stanford/nlp/models/pos-tagger/wsj3t0-18-left3words/left3words-distsim-wsj-0-18.tagger] ... Loading default properties from trained tagger edu/stanford/nlp/models/pos-tagger/wsj3t0-18-left3words/left3words-distsim-wsj-0-18.tagger 
Error: No such trained tagger config file found. 
java.io.FileNotFoundException: edu\stanford\nlp\models\pos-tagger\wsj3t0-18-left3words\left3words-distsim-wsj-0-18.tagger (The system cannot find the path specified) 
at java.io.FileInputStream.open(Native Method) 
at java.io.FileInputStream.<init>(FileInputStream.java:146) 
at java.io.FileInputStream.<init>(FileInputStream.java:101) 
at edu.stanford.nlp.tagger.maxent.TaggerConfig.getTaggerDataInputStream(TaggerConfig.java:737) 
at edu.stanford.nlp.tagger.maxent.TaggerConfig.<init>(TaggerConfig.java:185) 
at edu.stanford.nlp.tagger.maxent.TaggerConfig.<init>(TaggerConfig.java:130) 
at edu.stanford.nlp.tagger.maxent.MaxentTagger.<init>(MaxentTagger.java:240) 
at edu.stanford.nlp.pipeline.POSTaggerAnnotator.loadModel(POSTaggerAnnotator.java:69) 
at edu.stanford.nlp.pipeline.POSTaggerAnnotator.<init>(POSTaggerAnnotator.java:43) 
at edu.stanford.nlp.pipeline.StanfordCoreNLP$4.create(StanfordCoreNLP.java:496) 
at edu.stanford.nlp.pipeline.StanfordCoreNLP$4.create(StanfordCoreNLP.java:489) 
at edu.stanford.nlp.pipeline.AnnotatorPool.get(AnnotatorPool.java:62) 
at edu.stanford.nlp.pipeline.StanfordCoreNLP.construct(StanfordCoreNLP.java:325) 
at edu.stanford.nlp.pipeline.StanfordCoreNLP.<init>(StanfordCoreNLP.java:374) 
at edu.stanford.nlp.pipeline.StanfordCoreNLP.<init>(StanfordCoreNLP.java:364) 
at edu.stanford.nlp.pipeline.StanfordCoreNLP.<init>(StanfordCoreNLP.java:356) 
at irproject.LemmatizerHelper.<init>(LemmatizerHelper.java:25) 
at irproject.PreProcessingHelper.Lemmatization(PreProcessingHelper.java:59) 
at irproject.IRProject.main(IRProject.java:30) 
Exception in thread "main" java.lang.RuntimeException:  java.io.FileNotFoundException: edu\stanford\nlp\models\pos-tagger\wsj3t0-18-left3words\left3words-distsim-wsj-0-18.tagger (The system cannot find the path specified) 
at edu.stanford.nlp.pipeline.StanfordCoreNLP$4.create(StanfordCoreNLP.java:498) 
at edu.stanford.nlp.pipeline.StanfordCoreNLP$4.create(StanfordCoreNLP.java:489) 
at edu.stanford.nlp.pipeline.AnnotatorPool.get(AnnotatorPool.java:62) 
at edu.stanford.nlp.pipeline.StanfordCoreNLP.construct(StanfordCoreNLP.java:325) 
at edu.stanford.nlp.pipeline.StanfordCoreNLP.<init>(StanfordCoreNLP.java:374) 
at edu.stanford.nlp.pipeline.StanfordCoreNLP.<init>(StanfordCoreNLP.java:364) 
at edu.stanford.nlp.pipeline.StanfordCoreNLP.<init>(StanfordCoreNLP.java:356) 
at irproject.LemmatizerHelper.<init>(LemmatizerHelper.java:25) 
at irproject.PreProcessingHelper.Lemmatization(PreProcessingHelper.java:59) 
at irproject.IRProject.main(IRProject.java:30) 


Caused by: java.io.FileNotFoundException: edu\stanford\nlp\models\pos-tagger\wsj3t0-18-left3words\left3words-distsim-wsj-0-18.tagger (The system cannot find the path specified) 
at java.io.FileInputStream.open(Native Method) 
at java.io.FileInputStream.<init>(FileInputStream.java:146) 
at java.io.FileInputStream.<init>(FileInputStream.java:101) 
at edu.stanford.nlp.tagger.maxent.TaggerConfig.getTaggerDataInputStream(TaggerConfig.java:737) 
at edu.stanford.nlp.tagger.maxent.MaxentTagger.readModelAndInit(MaxentTagger.java:667) 
at edu.stanford.nlp.tagger.maxent.MaxentTagger.<init>(MaxentTagger.java:280) 
at edu.stanford.nlp.tagger.maxent.MaxentTagger.<init>(MaxentTagger.java:240) 
at edu.stanford.nlp.pipeline.POSTaggerAnnotator.loadModel(POSTaggerAnnotator.java:69) 
at edu.stanford.nlp.pipeline.POSTaggerAnnotator.<init>(POSTaggerAnnotator.java:43) 
at edu.stanford.nlp.pipeline.StanfordCoreNLP$4.create(StanfordCoreNLP.java:496) 
... 9 more 

这是我下载的jar文件 http://www.java2s.com/Code/Jar/s/Downloadstanfordcorenlpjar.htm

我使用NetBeans IDE 8.1

回答

相关问题