opennlp.tools.postag.POSTaggerME.train()java.lang.NullPointerException

亚历克斯·季托夫(Alex Titov)

有同样的问题!我得到InputSteram = null,我使用了IntelliJ IDEA,OpenNLP 1.9.1。在Ubuntu 18.04上

    public void makeDataTrainingModel() {
    model = null;
    System.out.println("POS model started");
    //InputStream dataIn = null;
    InputStreamFactory dataIn = null;
    try {
        dataIn = new InputStreamFactory() {
            public InputStream createInputStream() throws IOException {
                return NLPClassifier.class.getResourceAsStream("/home/int/src          
    /main/resources/en-pos.txt");
            }
        };
        //I get null pointer here in dataIn
        ObjectStream<String> lineStream = new PlainTextByLineStream((InputStreamFactory) , "UTF-8");
        ObjectStream<POSSample> sampleStream = new WordTagSampleStream(lineStream);
     **//This train part IS NOT WORK ?**
        model = POSTaggerME.train("en", sampleStream, TrainingParameters.defaultParams(), null);
    } catch (IOException e) {
        // Failed to read or parse training data, training failed
        e.printStackTrace();
    } finally {
        if (dataIn != null) {
           
            System.out.println("InputStreamFactory was not created!");
        }
    }
    System.out.println("POS model done...");
    System.out.println("Success generate model...");
    //write Data model
    OutputStream modelOut = null;
    try {
        String currentDir = new File("").getAbsolutePath();
        modelOut = new BufferedOutputStream(new FileOutputStream(currentDir + "//src//main//resources//example-bad-model.dat"));


        model.serialize(modelOut);
    } catch (IOException e) {
        // Failed to save model
        e.printStackTrace();
    } finally {
        if (modelOut != null) {
            try {
                modelOut.close();
            } catch (IOException e) {
                // Failed to correctly save model.
                // Written model might be invalid.
                e.printStackTrace();
            }
        }
    }
    System.out.println("Model generated and treated successfully...");
}

我在inputStream中得到了空指针,并且出错了...未创建InputStreamFactory!

    Exception in thread "main" java.lang.NullPointerException
    at java.io.Reader.<init>(Reader.java:78)
    at java.io.InputStreamReader.<init>(InputStreamReader.java:113)
    at     
    opennlp.tools.util.PlainTextByLineStream.reset(PlainTextByLineStream.java:57)
    at opennlp.tools.util.PlainTextByLineStream.<init>   
    (PlainTextByLineStream.java:48)
    at opennlp.tools.util.PlainTextByLineStream.<init>    
   (PlainTextByLineStream.java:39)

   at NLPClassifier.makeDataTrainingModel(NLPClassifier.java:98)
   at NlpProductClassifier.main(NlpProductClassifier.java:39)

数据如下所示:
profit_profit shell_environment 384912_CD bucks_currency
美金_profit finger_body 913964_CD
usd_currencyprofit_profit faith_law 3726_CD rur_currencyprofit_profit
game_entertainment 897444_CD dollar_currency got_buy
gift_jewelery 534841_CD rub_currency

没有打开吗?
欧文·博威特

如果getResourceAsStream返回null,则表示未找到资源。

您应该检查null并做其他事情,例如引发异常(IOExceptionFileNotFoundException在这种情况下,因为声明IOException允许子类throws),所以您不应该让它将传递null给其余代码。

NLPClassifier.class.getResourceAsStream("/home/int/src/main/resources/en-pos.txt")无法使用,因为资源与Java包具有相同的结构,只是用斜杠代替了点。它不是文件系统中的路径。

将其更改为:(getResourceAsStream("/en-pos.txt")因为您的文件位于包层次结构的根目录中)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么OpenNLP POSTaggerME这么慢?

来自分类Dev

使用RJB(Ruby Java Bridge)的OpenNLP中的java.lang.NullPointerException

来自分类Dev

java.lang.NullPointerException?

来自分类Dev

NoClassDefFoundError:opennlp / tools / chunker / ChunkerModel

来自分类Dev

在哪里可以找到适用于荷兰工具的opennlp.tools.lang.dutch。*软件包?

来自分类Dev

在哪里可以找到适用于荷兰工具的opennlp.tools.lang.dutch。*软件包?

来自分类Dev

获取java.lang.NullPointerException

来自分类Dev

mainactivity-java.lang.NullPointerException

来自分类Dev

java.lang.NullPointerException :(片段)

来自分类Dev

java.lang.NullPointerException出现

来自分类Dev

java.lang.NullPointerException OnItemClickListener

来自分类Dev

JDBC:java.lang.NullPointerException

来自分类Dev

java.lang.NullPointerException错误

来自分类Dev

java.lang.NullPointerException错误?

来自分类Dev

mainactivity-java.lang.NullPointerException

来自分类Dev

java.lang.nullpointerexception错误

来自分类Dev

java.lang.NullPointerException错误

来自分类Dev

java.lang.NullPointerException :(片段)

来自分类Dev

java.lang.NullPointerException PrintWriter

来自分类Dev

getResourceAsStream 的 java.lang.NullPointerException

来自分类Dev

java.lang.NullPointerException: uriString

来自分类Dev

引起:java.lang.NullPointerException:

来自分类Dev

Java Applet中的Java.lang NullPointerException

来自分类Dev

Android Java中的java.lang.NullPointerException

来自分类Dev

Java ArrayList java.lang.NullPointerException

来自分类Dev

java.lang.NullPointerException-硒java testng

来自分类Dev

Java/Selenium - java.lang.NullPointerException

来自分类Dev

radioGroup上的Java.lang.nullpointerException

来自分类Dev

jsp中的java.lang.NullPointerException

Related 相关文章

热门标签

归档