Java 如何在Eclipse中设置OpenNLP模型二进制文件路径?
我已经从下载了二进制模型文件,但我不知道如何设置路径。我正在使用Eclipse,我尝试将这些二进制文件添加到我的项目路径中Java 如何在Eclipse中设置OpenNLP模型二进制文件路径?,java,eclipse,nlp,opennlp,Java,Eclipse,Nlp,Opennlp,我已经从下载了二进制模型文件,但我不知道如何设置路径。我正在使用Eclipse,我尝试将这些二进制文件添加到我的项目路径中 import opennlp.tools.sentdetect.SentenceDetectorME; import opennlp.tools.sentdetect.SentenceModel; import opennlp.tools.util.InvalidFormatException; import java.io.FileInputStream; import
import opennlp.tools.sentdetect.SentenceDetectorME;
import opennlp.tools.sentdetect.SentenceModel;
import opennlp.tools.util.InvalidFormatException;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
public class OpenNlpTest {
public static void SentenceDetect() throws InvalidFormatException,
IOException {
String paragraph = "Hi. How are you? This is Mike.";
// always start with a model, a model is learned from training data
InputStream is = new FileInputStream("en-sent.bin");
SentenceModel model = new SentenceModel(is);
SentenceDetectorME sdetector = new SentenceDetectorME(model);
String sentences[] = sdetector.sentDetect(paragraph);
System.out.println(sentences[0]);
System.out.println(sentences[1]);
is.close();
}
public static void main(String []z){
try {
SentenceDetect();
} catch (InvalidFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
这是我试图运行的代码,但它给出了以下错误
java.io.FileNotFoundException: en-sent.bin (The system cannot find the file specified)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at OpenNlpTest.SentenceDetect(OpenNlpTest.java:17)
at OpenNlpTest.main(OpenNlpTest.java:31)
java.io.FileNotFoundException:en-sent.bin(系统找不到指定的文件)
在java.io.FileInputStream.open(本机方法)
位于java.io.FileInputStream。(未知源)
位于java.io.FileInputStream。(未知源)
在OpenNlpTest.SentenceDetect(OpenNlpTest.java:17)
在OpenNlpTest.main(OpenNlpTest.java:31)
这是我刚刚开始的项目的层次结构
正如您看到的那样
java.io.FileNotFoundException:de-sent.bin(系统找不到指定的文件)
您尚未添加必要的依赖库。在您提供的链接中有一个名为de-sent.bin的bin。您必须将其添加到库路径中
我找到了解决办法
基本上,我给出的是文件的绝对路径,而不是相对路径。正如您所看到的,项目上有一个红色指示灯。只需查看错误控制台中显示的错误即可。我解决了该错误,它表示其中一个存档或ZIP已损坏。我从文件夹中删除了该ZIP,现在没有红色感叹号,但仍然是我得到的相同输出。[这对我有帮助,谢谢,我应该想到另一种搜索方式][1][1]:然后将其作为答案发布并接受它。您可以随时回答您的问题。底部将有一个“回答您的问题”按钮,但我想使用“en sent.bin”是英文版的ie模型文件,因此我只添加了这个bin文件。您可以检查是否有一个名为“language”的列“最起码,我以前也试过,但也有同样的例外。事实上,我认为我没有给出正确的路径,如果你能帮我解决这个问题,那就太好了,我已经添加了OPENNPL_HOME,并给出了我保存所有bin文件的目录路径。它仍然不起作用。设置路径后,您是否重新启动了eclipse。如果不重新启动eclipse,可能是因为它引用了旧值。非常抱歉,我错误地发布了问题。当我尝试使用de-sent.bin时,它会给出与使用en-sent.bin时相同的错误,相同的异常!嗯,这不是一个好的解决方案,因为它不能在其他环境中扩展。