运行最新版本的stanford-postagger 3.6.0时出现ClassNotFoundException

时间:2015-12-15 14:11:57

标签: stanford-nlp

我找到了Stanford pos tagger,并希望在我正在开发的项目中使用它。 不幸的是,当我尝试运行它时出现以下错误:

  

线程“Thread-0”中的异常java.lang.NoClassDefFoundError:   组织/ SLF4J /的LoggerFactory           在edu.stanford.nlp.io.IOUtils。(IOUtils.java:41)           在edu.stanford.nlp.tagger.maxent.MaxentTagger.readModelAndInit(MaxentTagger.java:765)           在edu.stanford.nlp.tagger.maxent.MaxentTagger。(MaxentTagger.java:298)           在edu.stanford.nlp.tagger.maxent.MaxentTagger。(MaxentTagger.java:263)           在edu.stanford.nlp.tagger.maxent.MaxentTaggerGUI $ 1.run(MaxentTaggerGUI.java:89)   引起:java.lang.ClassNotFoundException:org.slf4j.LoggerFactory           at java.net.URLClassLoader.findClass(Unknown Source)           at java.lang.ClassLoader.loadClass(Unknown Source)           at sun.misc.Launcher $ AppClassLoader.loadClass(Unknown Source)           at java.lang.ClassLoader.loadClass(Unknown Source)           ......还有5个

无论是在eclipse,命令行还是gui中运行,都会发生同样的错误。

我在寻找解决方案并尝试了许多无法解决的问题后发现,以前的版本3.5.2运行得很好,没有错误,所以我现在将恢复到以前的版本。

新版本是否有问题?

1 个答案:

答案 0 :(得分:0)

我们已将slf4j日志记录添加到我们的版本中。在3.6.0中有一个名为lib的文件夹,需要添加到CLASSPATH。