2016-08-06 30 views
0

ich die neueste Version von Stanford CoreNLP von this link mit dem größeren Englisch ModellStanford CORENLP Meister Halten Crashing (Nullpointer)

Platzieren Sie das Modell in der gleichen Projektordner heruntergeladen, ich bin mit „ant“/„ant jar "um das Projekt zu bauen.

ich dann auf den Server geladen werden mit diesem Befehl auf Windows:

java -d64 -mx20g -classpath "*;lib\*;liblocal\*;libsrc\*" edu.stanford.nlp.pipeline.StanfordCoreNLPServer -timeout 500000 

von http://localhost:9000 die Ergebnisseite wird geladen, die Abstürze Server, wenn Filter wie Beziehungen, Koreferenz verwenden.

ich den Fehler:

java.util.concurrent.ExecutionException: java.lang.NullPointerException 

Das Protokoll vom Server:

Einige Anmerkung scheitern wie:

[pool-1-thread-1] INFO edu.stanford.nlp.pipeline.MentionAnnotator - Error with building coref mention annotator! 

Und das Hauptproblem/Ausnahme:

java.util.concurrent.ExecutionException: java.lang.NullPointerException 
     at java.util.concurrent.FutureTask.report(Unknown Source) 
     at java.util.concurrent.FutureTask.get(Unknown Source) 
     at edu.stanford.nlp.pipeline.StanfordCoreNLPServer$CoreNLPHandler.handle(StanfordCoreNLPServer.java:497) 
     at com.sun.net.httpserver.Filter$Chain.doFilter(Unknown Source) 
     at sun.net.httpserver.AuthFilter.doFilter(Unknown Source) 
     at com.sun.net.httpserver.Filter$Chain.doFilter(Unknown Source) 
     at sun.net.httpserver.ServerImpl$Exchange$LinkHandler.handle(Unknown Source) 
     at com.sun.net.httpserver.Filter$Chain.doFilter(Unknown Source) 
     at sun.net.httpserver.ServerImpl$Exchange.run(Unknown Source) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
     at java.lang.Thread.run(Unknown Source) 
Caused by: java.lang.NullPointerException 
     at edu.stanford.nlp.pipeline.MentionAnnotator.annotate(MentionAnnotator.java:100) 
     at edu.stanford.nlp.pipeline.AnnotationPipeline.annotate(AnnotationPipeline.java:75) 
     at edu.stanford.nlp.pipeline.StanfordCoreNLP.annotate(StanfordCoreNLP.java:606) 
     at edu.stanford.nlp.pipeline.StanfordCoreNLPServer$CoreNLPHandler.lambda$handle$344(StanfordCoreNLPServer.java:479) 
     at java.util.concurrent.FutureTask.run(Unknown Source) 
     ... 3 more 

Jede Hilfe auf w Hut könnte dies verursachen würde sehr geschätzt werden.

Danke

Antwort

0

Was füttern Sie in die Bibliothek? Ich habe coreNLP Bibliothek in IntelliJ und Netbeans ausgeführt und ich hatte ein Problem, wo, wenn ich ein Leerzeichen (entweder ein oder mehrere Leerzeichen, eine Registerkarte oder eine leere leere Zeile) gefüttert würde ich eine Nullzeiger Ausnahme erhalten würde. Ich musste jeden Satz überprüfen, damit sie nicht leer waren, wenn sie in die coreNLP-Bibliothek eingegeben wurden. (Ich speicherte jeden Satz als String in einem Array. Wenn ich also eine leere Zeichenfolge im Array speicherte und diese an die CoreNLP-Bibliothek übergab, stürzte sie ab). Ich weiß nicht, ob es dein Fall ist, aber hoffe, das hilft.

+0

Hey. Danke, dass du versucht hast zu helfen. Am Ende habe ich die stabile Version auf der Website verwendet und einige Funktionen weggelassen. Es hat viel Zeit verbraucht, also habe ich es fallen gelassen. – TestCandidate

+0

Schön, ich bin froh, dass du es herausgefunden hast. Ja, es ist viel einfacher, die Website zu nutzen. Stellen Sie sicher, dass Sie es nicht für große Anfragenmengen verwenden, da es sich um eine öffentliche API handelt. Falls Sie große Textmengen verarbeiten müssen, sollten Sie CoreNLP als dedizierten Server verwenden. – RoyVA