PyLucene Setup

安装配置JDK

Ubuntu 16.04 已经装有OpenJDK

~/software$ java --version
openjdk version "1.8.0_171"
OpenJDK Runtime Environment (build 1.8.0_171-8u171-b11-0ubuntu0.16.04.1-b11)
OpenJDK 64-Bit Server VM (build 25.171-b11, mixed mode)

若没有安装,则按照以下步骤
到官网下载对应包解压到 /usr/lib/jvm,然后编辑 /etc/profile 配置环境变量

sudo tar zxvf jdk-8u121-linux-x64.tar.gz -C /usr/lib/jvm
sudo vi /etc/profile

在 /etc/profile 最后添加如下

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_121
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:${PATH}

执行

source /etc/profile

然后执行 java -version、javac等检查是否成功

安装配置 Ant

官网下载Binary Distributions,并设置路径。
或者也可以直接apt-get安装。

sudo apt-get update
sudo apt-get install ant

查看version

~/software$ ant -version
Apache Ant(TM) version 1.9.6 compiled on July 8 2015

安装JCC & PyLucene

PyLucene包中包含JCC,直接安装即可。
进入解压后的PyLucene包所在目录,执行

pushd jcc
vi setup.py

进行如下修改:

JDK = {
    'darwin': JAVAHOME or JAVAFRAMEWORKS,
    'ipod': '/usr/include/gcc',
    'linux2': '/usr/lib/jvm/java-8-openjdk-amd64', # jdk安装路径
    'sunos5': '/usr/jdk/instances/jdk1.6.0',
    'win32': JAVAHOME,
    'mingw32': JAVAHOME,
    'freebsd7': '/usr/local/diablo-jdk1.6.0'
}
JAVAC = {
    'darwin': ['javac', '-source', '1.5', '-target', '1.5'],
    'ipod': ['jikes', '-cp', '/usr/share/classpath/glibj.zip'],
    'linux2': ['/usr/lib/jvm/java-8-openjdk-amd64/bin/javac'], # jdk安装路径
    'sunos5': ['javac'],
    'win32': ['%(win32)s/bin/javac.exe' %(JDK)],
    'mingw32': ['%(mingw32)s/bin/javac.exe' %(JDK)],
    'freebsd7': ['javac'],
}
JAVADOC = {
    'darwin': ['javadoc'],
    'ipod': [],
    'linux2': ['/usr/lib/jvm/java-8-openjdk-amd64/bin/javadoc'], # jdk安装路径
    'sunos5': ['javadoc'],
    'win32': ['%(win32)s/bin/javadoc.exe' %(JDK)],
    'mingw32': ['%(mingw32)s/bin/javadoc.exe' %(JDK)],
    'freebsd7': ['javadoc'],
}

保存并关闭后执行:

sudo /home/username/anaconda3/envs/venv27/bin/python setup.py build
sudo /home/username/anaconda3/envs/venv27/bin/python setup.py install
popd
vi Makefile

添加如下代码,注意python的位置!

# Linux  (Ubuntu 16.04, Python 2.7, JDK 8u121, no setuptools)
PREFIX_PYTHON=/home/t-jin/anaconda3/envs/venv27
ANT=JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 /usr/bin/ant
PYTHON=$(PREFIX_PYTHON)/bin/python
JCC=$(PYTHON) -m jcc --shared
NUM_FILES=8

修改pylucene-6.2.0/lucene-java-6.2.0/lucene/expressions/lib目录下文件的simlink(重要)

默认如下:

antlr4-runtime-4.5.1-1.jar -> /Users/vajda/.ivy2/cache/org.antlr/antlr4-runtime/jars/antlr4-runtime-4.5.1-1.jar
asm-5.1.jar -> /Users/vajda/.ivy2/cache/org.ow2.asm/asm/jars/asm-5.1.jar
asm-commons-5.1.jar -> /Users/vajda/.ivy2/cache/org.ow2.asm/asm-commons/jars/asm-commons-5.1.jar

修改:

ln -snf /home/username/.ivy2/cache/org.antlr/antlr4-runtime/jars/antlr4-runtime-4.5.1-1.jar antlr4-runtime-4.5.1-1.jar
ln -snf /home/username/.ivy2/cache/org.antlr/antlr4-runtime/jars/asm-5.1.jar asm-5.1.jar
ln -snf /home/username/.ivy2/cache/org.antlr/antlr4-runtime/jars/asm-commons-5.1.jar asm-commons-5.1.jar

保存并关闭后执行:

make
make test
sudo make install

补充

1. 最好安装 Ivy

官网下载 binary-with-dependencies 版本,解压后执行如下命令即可

sudo cp ivy-2.5.0-rc1.jar /usr/share/ant/lib/ # ant的安装路径

2. SmartChineseAnalyzer报错

Pylucene不能导入SmartChineseAnalyzer的解决办法

在Makefile相应位置添加

--exclude org.apache.lucene.analysis.cn.smart.AnalyzerProfile\

参考:
https://blog.csdn.net/thuyx/article/details/69284170

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,560评论 4 361
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,104评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,297评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,869评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,275评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,563评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,833评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,543评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,245评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,512评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,011评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,359评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,006评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,062评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,825评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,590评论 2 273
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,501评论 2 268