NLPIR最新版本下载demo运行时发现出现如下问题:
第一:
Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'E://java//JNI//JnaTest_NLPIR//NLPIR1': Native library (win32-x86/E://java//JNI//JnaTest_NLPIR//NLPIR1.dll) not found in resource path ([file:/E:/WorkSpace/firstWork/JNA/JnaTest_NLPIR/bin/, file:/E:/WorkSpace/firstWork/JNA/JnaTest_NLPIR/lib/jna-4.0.0.jar])
at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:271)
at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:398)
at com.sun.jna.Library$Handler.<init>(Library.java:147)
at com.sun.jna.Native.loadLibrary(Native.java:412)
at com.sun.jna.Native.loadLibrary(Native.java:391)
at code.NlpirTest$CLibrary.<clinit>(NlpirTest.java:15)
at code.NlpirTest.main(NlpirTest.java:47)
这个问题是代码加载dll的时候出现的问题。
1、可能是路径错误,检查路径。
2、以下代码注释要充分理解
// 定义并初始化接口的静态变量这一个语句是来加载dll的,注意dll文件的路径可以是绝对路径也可以是相对路径,只需要填写dll的文件名,不能加后缀。
CLibrary Instance = (CLibrary)Native.loadLibrary(
"E://java//JNI//JnaTest_NLPIR//NLPIR",CLibrary.class);
第二:
在解决了第一个问题后,运行 发现可能会出现“初始化失败”的问题。
这个问题主要是NLPIR的授权使用问题了,NLPIR.user无效或过期。
要找到有效的NLPIR.user需要到以下地址
https://github.com/NLPIR-team/NLPIR
找License下载到本地,然后替换项目下的Data目录下的NLPIR.user即可。