Ubuntu 16.04 安装 PyLucene
- 系统:Ubuntu 16.04 64 bit
- PyLucene:6.4.1
安装配置JDK
Ubuntu 16.04 已经装有OpenJDK,如需使用Java SE SDK,到官网下载对应包解压到 /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,解压到 /opt,然后编辑 /etc/profile 配置环境变量
/etc/profile最终应该如下(包括上一步所做的修改):
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_121
export ANT_HOME=/opt/apache-ant-1.10.1
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:${PATH}:${ANT_HOME}/bin
执行
source /etc/profile
然后执行 ant -version检查是否成功
安装JCC & PyLucene
PyLucene包中包含JCC,直接安装即可。
进入解压后的PyLucene包所在目录,执行
pushd jcc
vi setup.py
进行如下修改:
JDK = {
'darwin': JAVAHOME or JAVAFRAMEWORKS,
'ipod': '/usr/include/gcc',
'linux2': '/usr/lib/jvm/jdk1.8.0_121',
'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/jdk1.8.0_121/bin/javac'],
'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/jdk1.8.0_121/bin/javadoc'],
'sunos5': ['javadoc'],
'win32': ['%(win32)s/bin/javadoc.exe' %(JDK)],
'mingw32': ['%(mingw32)s/bin/javadoc.exe' %(JDK)],
'freebsd7': ['javadoc'],
}
保存并关闭后执行:
python setup.py build
sudo python setup.py install
popd
vi Makefile
添加如下代码,并将其他有关这些变量的赋值注释掉:
# Linux (Ubuntu 16.04, Python 2.7, JDK 8u121, no setuptools)
PREFIX_PYTHON=/usr
ANT=/opt/apache-ant-1.10.1/bin/ant
PYTHON=$(PREFIX_PYTHON)/bin/python
JCC=$(PYTHON) -m jcc
NUM_FILES=8
保存并关闭后执行:
make
make test
sudo make install
安装完成。
补充
1. 最好安装 Ivy
官网下载 binary-with-dependencies 版本,解压后执行如下命令即可
cp ivy-2.4.0.jar /opt/apache-ant-1.10.1/lib
2. SmartChineseAnalyzer报错
Pylucene不能导入SmartChineseAnalyzer的解决办法
在Makefile相应位置添加
--exclude org.apache.lucene.analysis.cn.smart.AnalyzerProfile\