中科院分词项目例子——JnaTest_V1例子跑起

网上例子有很多,配置的步骤也没有错,但是按照网上的配置,依然跑不起来,今天做个整理说明。

以下部分转自http://www.open-open.com/lib/view/open1434183624567.html

首先,下载中科院分词项目。

github网址:https://github.com/NLPIR-team/NLPIR/tree/master/NLPIR%20SDK/NLPIR-ICTCLAS

下载完成之后直接在eclipse中导入如图所示的项目

工程源码在sample目录下,包含C、C++、Hadoop、JAVA、Python等语言示例。

用Eclipse新建一个工程导入JAVA工程目录JnaTest_NLPIR,

(1)Eclipse -> File->import

  中科院NLPIR中文分词java版

(2)选择JnaTest_NLPIR所在的路径,点击Finish

  中科院NLPIR中文分词java版

(3)查看Eclipse工程

  中科院NLPIR中文分词java版

(4)NlpirTest.java文件中包含main函数,下面的语句初始化NLPIR需要的库文件

  中科院NLPIR中文分词java版

CLibrery类是包含在NlpirTest.java文件中,

CLibrary Instance = (CLibrary) Native.loadLibrary("H:\\workspace\\ictclas\\1\\ICTCLAS2015\\lib\\win64\\NLPIR", CLibrary.class);

 

函数loadLibrary需要传递库文件位置,源码提供了多种语言类库,我们的工程需要加载win64类库,该文件夹内容如下,

 中科院NLPIR中文分词java版

(5)加载分词数据Data文件夹路径

String argu = "H:\\workspace\\ictclas\\1\\ICTCLAS2015";
String system_charset = "UTF-8"; int charset_type = 1;  int init_flag = CLibrary.Instance.NLPIR_Init(argu, charset_type, "0");

H:\\workspace\\ictclas\\1\\ICTCLAS2015是Data文件夹的父文件夹。

这步骤完成后,你就可以调试代码了。有关API可以阅读手册。

以上部分转自 http://www.open-open.com/lib/view/open1434183624567.html

 

我按照上面的方法依然出错,虽然路径配置没有错误,但是究其原因不知为何,调试代码总会出现如下错误提示:

 

后来终于找到了解决方法,至于为什么会突然就可以运行了,本人依然没有找到原因,现将解决办法做如下说明:

如果NLPIR的本地路径在JnaTest_V1这个文件夹里面,调试代码就会出现以上错误,如下图

后来将NLPIR.dll和NLPIR.lib以及Data单独存放与一个文件夹中,该文件夹不以JnaTest_V1为父文件夹,重新修改以上两个路径,代码终于调试出了。

 

在eclipse中NlpirTest.java有两个路径需要改;

一是修改

CLibrary Instance = (CLibrary) Native.loadLibrary("D:\\NLPIR\\bin\\ICTCLAS2013\\x64\\NLPIR", CLibrary.class);

修改为:

CLibrary Instance = (CLibrary) Native.loadLibrary("F:/zhongkeyuan/NLPIR", CLibrary.class);

 

也就是NLPIR所在的本地路径,要加上NLPIR。

 

 二是修改 String argu = "F:/zhongkeyuan";中双引号的路径,如下

public static void main(String[] args) throws Exception {
        String argu = "F:/zhongkeyuan";
        // String system_charset = "GBK";//GBK----0
        String system_charset = "UTF-8";

  运行程序,出现如下结果

 

至此,配置完成

 

posted @ 2017-04-26 15:51  水晶葡挞  阅读(361)  评论(0编辑  收藏  举报