关于ltp本地调用的相关参考请见LTP的Git项目:https://github.com/HIT-SCIR

以下以/home/lion/Desktop路径为例
下面教程中出现的具体路径以你实际配置的为准

一、安装JDK
  方法一:使用软件源安装openjdk
    sudo apt-get install openjdk-7-jdk

  方法二:使用软件源安装sun jdk
    sudo apt-get install sun-java6-jdk

  方法三:从Oracle官网下载sun jdk7手动安装(推荐)
    1、从官网下载Linux版本的jdk,根据系统位数选择对应版本。Link:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
    2、解压(文件名以你下载的文件名为准):tar -xf jdk-7u71-linux-i586.tar.gz
    3、将解压出来的文件移动到/usr/lib目录下(请用sudo赋予管理员权限,不然不能移动过去):sudo mv jdk-7u71-linux-i586 /usr/lib
    4、配置Java环境变量
      1)、打开终端,输入:sudo gedit /etc/profile
      2)、export JAVA_HOME=/usr/lib/jdk-7u71-linux-i586
        export PATH=$JAVA_HOME/bin

二、安装ANT
  方法一:使用软件源安装
    sudo apt-get install ant
    但是不推荐这一方法,版本不够新,安装成功,会附带一起杂七杂八的东西,而且你使用的时候还会出一定问题

  方法二:从Apache官网下载,自己手动安装(推荐)
    1、从Apache官网下载最新版的Ant,Link:http://ant.apache.org/bindownload.cgi
    2、解压(文件名以你下载的文件名为准):tar -xf apache-ant-1.9.4-bin.tar.gz
    3、将解压出来的文件移动到/usr/lib目录下(请用sudo赋予管理员权限,不然不能移动过去):sudo mv apache-ant-1.9.4-bin /usr/lib
    4、配置Ant环境变量
      1)、打开终端,输入:sudo gedit /etc/profile
      2)、将刚才配置的Java环境变量修改成如下内容:
        export ANT_HOME=/usr/lib/apache-ant-1.9.4-bin
        export JAVA_HOME=/usr/lib/jdk-7u71-linux-i586
        export PATH=$JAVA_HOME/bin:$PATH:$ANT_HOME/bin
        export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

三、安装cmake
  打开终端,输入sudo apt-get install cmake即可
  如果在./configure或者make过程中出现如下错误,请安装g++:sudo apt-get install g++

  CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found. Please set CMAKE_CXX_COMPILER to a valid compiler path or name.

四、编译LTP
  1、下载ltp源码文件ltp-master,解压,Link:https://github.com/HIT-SCIR/ltp
  2、用cd命令跳转到ltp-master根目录下
  3、使用./configure检查编译环境
  4、如果第三步检查无误,输入make命令进行编译,编译的具体操作步骤可以参考ltp-master根目录下的install文件

五、编译LTP4J
  1、下载ltp4j源码文件:ltp4j-master,解压,Link:https://github.com/HIT-SCIR/ltp4j
  2、用cd命令跳转到ltp4j-master跟目录下,使用ant命令
  3、在对ltp4j编译前,请先将ltp4j-master根目录下CMakeLists.txt文件中的LTP_HOME路径改为你刚刚编译的LTP的路径
  4、在终端输入make,等待成功编译完成

六、添加jni动态库路径
  方法一:通过环境变量LD_LIBRARY_PATH指定动态库搜索路径
    1、打开终端,输入:sudo gedit /etc/profile,回车
    2、在打开的文件末尾添加:
      #设置JNI动态库路径,实际路径以你编译路径为准
      LD_LIBRARY_PATH=/home/lion/Desktop/ltp4j-master/jni
    3、保存并关闭文件,在终端输入:source /etc/profile或者注销或者重启来更新环境变量,推荐使用后两者

  方法二:在配置文件/etc/ld.so.conf中指定动态库搜索路径
    1、打开终端,输入sudo gedit /etc/ld.so.conf,回车
    2、在打开的文件末尾添加:
      #设置JNI动态库路径,实际路径以你编译路径为准
      /home/lion/Desktop/ltp4j-master/libs
    3、保存并关闭文件,在终端输入:sudo ldconfig或者注销或者重启来更新环境变量,推荐使用后两者

LTP随笔——本地调用ltp之ltp4j的更多相关文章

  1. python处理自然语言:1、调用LTP的API,2、使用pyltp

    最近在学习处理自然语言处理,就发现LTP的(哈工大语言云),这个比我最先使用的jieba分词更好,词库更大,功能也更强大. 这里介绍两种方法:1.调用LTP的API,2.使用pyltp,这里的方法基于 ...

  2. [转载:]C#与Fortran混合编程之本地调用Fortran动态链接库

    前言 C#发展到现在,已是一门相当完善的语言,他基于C语言风格,演化于C++.并依靠强大的.NET底层框架.C#可以用来快速构建桌面及Web应用.然而在我们的实际工作中,尽管C#已经非常完善,但还是不 ...

  3. 解决EJB本地调用“java.lang.ClassCastException: $Proxy96 cannot be cast to com.tgb.ejb.UserManager”异常

    EJB本地调用方式:把Webclient和EJB服务端部署到同一个JBoss,client和server通过一个JVM进行通信. Web客户端本地调用时.需引用EJB服务端打包的jar,不需引用JBo ...

  4. Ajax 调用webservice 解决跨域请求和发布到服务器后本地调用成功外网失败的问题

        webservice 代码 /// <summary> /// MESService 的摘要说明 /// </summary> [WebService(Namespac ...

  5. ssh在本地调用远程主机上的命令,不登录远程主机shell

    需求描述: 在实际shell脚本的编写过程中,需要通过ssh远程执行一个命令,并返回执行的结果 简单来说,就是将命令发送到远程的主机上进行执行,但是并没有实际的登录到远程主机上.即通过 ssh的方式本 ...

  6. RPC与本地调用的区别

    RPC远程调用:一般可以跨平台通讯,采用http协议.因为http协议底层使用socket技术,只要你的语言支持socket技术,就可以相互进行通讯.比如:java语言开发的接口,http协议,然后让 ...

  7. dubbo之本地调用

    本地调用 本地调用使用了 injvm 协议,是一个伪协议,它不开启端口,不发起远程调用,只在 JVM 内直接关联,但执行 Dubbo 的 Filter 链. 配置 定义 injvm 协议 <du ...

  8. Dubbo如何支持本地调用?injvm方式解析

    Dubbo是一个远程调用的框架,对于一个服务提供者,暴露了一个接口供外部消费者调用,那么对于提供者自己是否可以调用这个接口,需要什么特殊处理吗? 这篇文章就分享下Dubbo关于本地调用的实现机制,以及 ...

  9. ZH奶酪:自然语言处理工具LTP语言云调用方法

    前言 LTP语言云平台 不支持离线调用: 支持分词.词性标注.命名实体识别.依存句法分析.语义角色标注: 不支持自定义词表,但是你可以先用其他支持自定义分词的工具(例如中科院的NLPIR)把文本进行分 ...

随机推荐

  1. gulp-babel使用

    各大浏览器厂商对es2015功能支持不完全,等到全部支持会等很长时间,如果现在使用es2015,可以选择babel一个将ES6/ES7写的代码转换为ES5代码的编译器. 我们选择使用gulp自动化编译 ...

  2. jsfl调整笔刷的笔触和颜色

    今天在用jsfl写脚本以简化对fla资源的处理工作,在画矩形时需要能自动调整笔刷的笔触颜色,填充颜色透明度,查jsfl文档无果,上网查了多番资料写出了可用代码,共享下: var fill = fl.g ...

  3. 让div垂直居中的5种方法

    方法一: 这个方法把 div 的显示方式设置为表格,然后我们可以使用表格的 vertical-align property 属性. HTML & CSS: <div class=&quo ...

  4. 深入理解javascript系列(4):立即调用的函数表达式

    本文来自汤姆大叔 前言 大家学JavaScript的时候,经常遇到自执行匿名函数的代码,今天我们主要就来想想说一下自执行. 在详细了解这个之前,我们来谈了解一下“自执行”这个叫法,本文对这个功能的叫法 ...

  5. slf4j的简单介绍

    SLF4J,Simple Logging Facade for JAVA,是一个十分简单的的日志facade,对于不同的日志框架做了一个封装. 对比common logging,Common logg ...

  6. 如何将本地的jar包上传到maven本地仓库中

    首先需要将本地的jar包做mvn install到本地仓库中 mvn install:install-file -Dfile=D:\skyeye-ruleInfo\lib\lucene-querypa ...

  7. bat获取所有的参数

    bat默认只能获取到1-9个参数,分别用%1 %2 ... %9引用,如果传给bat的参数大于9个,就必须用shift. 工作需要,要写个bat脚本,获取所有的参数,再将所有的参数传给Java,代码如 ...

  8. Android事件分发传递

    一.与触摸事件有关的几个方法 boolean dispatchTouchEvent(MotionEvent ev); 接收到触摸事件时,是否分发事件到下面的View 返回true:分发触摸事件 返回f ...

  9. GIT和SVN之间的区别及基本操作对比

    1)GIT是分布式的,SVN不是: 这是GIT和其它非分布式的版本控制系统,例如 SVN,CVS等,最核心的区别.如果你能理解这个概念,那么你就已经上手一半了.需要做一点声明,GIT并不是目前第一个或 ...

  10. js 获取浏览器高度和宽度值(多浏览器)(转)

    IE中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.d ...