Java 史丹福跑步

Java 史丹福跑步,java,stanford-nlp,Java,Stanford Nlp,我正在使用Stanner,当我使用它的演示或@ChristopherManning提供的序列化代码时,我得到以下错误: import edu.stanford.nlp.ie.NERClassifierCombiner; import edu.stanford.nlp.io.IOUtils; import edu.stanford.nlp.ling.CoreLabel; import java.io.IOException; import java.util.List; public class

我正在使用Stanner,当我使用它的演示或@ChristopherManning提供的序列化代码时,我得到以下错误:

import edu.stanford.nlp.ie.NERClassifierCombiner;
import edu.stanford.nlp.io.IOUtils;
import edu.stanford.nlp.ling.CoreLabel;
import java.io.IOException;
import java.util.List;

public class Ner {

  public static void main(String[] args) throws IOException {
    String serializedClassifier = "/local/stanford-ner-2015-01-30/classifiers/english.all.3class.distsim.crf.ser.gz";
    String serializedClassifier2 = "/local/stanford-ner-2015-01-30/classifiers/english.muc.7class.distsim.crf.ser.gz";

    if (args.length > 0) {
      serializedClassifier = args[0];
    }

    NERClassifierCombiner classifier = new NERClassifierCombiner(false, false, 
            serializedClassifier, serializedClassifier2);

    String fileContents = IOUtils.slurpFile("input.txt");
    List<List<CoreLabel>> out = classifier.classify(fileContents);

    int i = 0;
    for (List<CoreLabel> lcl : out) {
      i++;
      int j = 0;
      for (CoreLabel cl : lcl) {
        j++;
        System.out.printf("%d:%d: %s%n", i, j,
                cl.toShorterString("Text", "CharacterOffsetBegin", "CharacterOffsetEnd", "NamedEntityTag"));
      }
    }
  }

}

您提供的代码片段正在使用最新版本为我工作。你检查过你的类路径中没有旧的jar文件吗?@Sebastian Schuster我在我的windows上运行了它,但在我的Ubuntu机器上失败了。完整的错误是:线程“main”java.lang.NoSuchFieldError中的异常:edu.stanford.nlp.sequences.ObjectBankWrapper.doBasicStuff(ObjectBankWrapper.java:136)中的wordFunction位于edu.stanford.nlp.sequences.ObjectBankWrapper$WrappedIterator.next(ObjectBankWrapper.java:86)edu.stanford.nlp.ie.AbstractSequenceClassifyToString(AbstractSequenceClassifier.java:588)位于Ner.main(Ner.java:111)我很确定您没有使用最新版本,因为ObjectBankWrapper.java中的当前版本第136行是一条注释。请确保您使用的是最新版本,并且您的类路径中没有旧jar文件。是的,您是对的。我的类路径中有一个旧版本的PosTagger。非常感谢!
 java.lang.ClassCastException: java.util.ArrayList cannot be cast to      [Ledu.stanford.nlp.util.Index