我是opennlp的新手,我越来越缺少manifest.properties!我执行以下代码时出现异常,请告诉我避免这种情况的建议。

   public class PrePostProcessing_Peregrine  {


public Map<String,Set<String>> btntMap;
public Map<String, String> fishMap;
public SentenceModel sModel;
public SentenceDetectorME sentDet;
public Map<String,Set<String>> topBottomTermSet;

public PrePostProcessing_Peregrine() throws IOException {


    FileInputStream str=new FileInputStream("/home/rajendraprasad.yk/Desktop/data/en-sent.bin");
    System.out.println(str+"===================>");
     SentenceModel sModel = new SentenceModel(str);
     System.out.println("===================model =================>"+sModel);
    sentDet = new SentenceDetectorME(sModel);
    System.out.println("===================>sentDet "+sentDet);
    System.err.println("Sentence Detector Initialized");


例外是:

opennlp.tools.util.InvalidFormatException: Missing the manifest.properties!
    at opennlp.tools.util.model.BaseModel.validateArtifactMap(BaseModel.java:217)
    at opennlp.tools.sentdetect.SentenceModel.validateArtifactMap(SentenceModel.java:78)
    at opennlp.tools.util.model.BaseModel.<init>(BaseModel.java:142)
    at opennlp.tools.sentdetect.SentenceModel.<init>(SentenceModel.java:73)
    at com.molcon.Text_Mining.PrePostProcessing_Peregrine.<init>(PrePostProcessing_Peregrine.java:66)
    at com.molcon.Text_Mining.TextMining.peregrineRun(TextMining.java:207)
    at com.molcon.Text_Mining.TextMining.process_journals_for_Mining(TextMining.java:108)


我在FileInputStream modelIn = new FileInputStream("/home/rajendraprasad.yk/Desktop/data/en-sent.bin");上犯了错误,现在我从此更改更改为InputStream modelIn = new FileInputStream("/home/rajendraprasad.yk/Desktop/data/en-sent.bin");并没有收到任何异常,但无法从SentenceModel加载文件。

当我执行此行SentenceModel sModel = new SentenceModel(modelIn);时没有任何响应,请帮助

最佳答案

据我了解,可能有两种原因:


您使用的模型已损坏,请尝试重新下载
您使用的模型版本和OpenNLP库的版本不匹配。正如我从官方网站上看到的,型号是特定于版本的,因此您应该尝试了解是否属于这种情况,并采取相应的措施。

07-26 03:48