我希望能够在我的Mac上使用pyLucene。这些说明让我绝望地失去了,因为每一条设置或制作的指令都要求我在它之前做一些事情,并且很难知道从哪个窗口开始做什么以及做什么。
我已经下载了PyLucene。我想知道的第一件事是我把文件夹放在哪里,因为这对我来说似乎不言自明。
要使用它,我被告知我需要构建JCC,它包含在pylucene下载中。
说明:
在命令行中输入:
$ python setup.py build $ sudo python setup.py install
但要做到这一点,我认为,我需要在正确的位置或将文件夹放在正确的位置,否则我会得到"setup.py" not found
。
您可以在此环境中提供任何帮助(shell窗口?IDE?)。获得第一部分的任何帮助:建立JCC,然后设置pylucene非常感谢。
答案 0 :(得分:6)
这适用于最近的macOS版本。首先,请确保安装:
brew install ant --with-ivy
然后添加到您的~/.bash_profile
:
export JAVA_HOME=$(/usr/libexec/java_home)
然后,重新加载你的shell。
Download PyLucene并从您的shell中提取文件夹cd
。现在,请按照official installation guide:
cd jcc
python setup.py build
现在,安装JCC:
python setup.py install
(如果您使用的是macOS系统Python,则可能需要sudo
。)
现在返回父文件夹并编辑Makefile
。按照指示将未注释的行替换为ant
,python
,jcc
和NUM_FILES
的实际路径:
ANT=ant
PYTHON=python
JCC=python -m jcc
NUM_FILES=8
现在构建PyLucene:
make
make test
最后,要安装内置的PyLucene:
make install
(如果使用系统Python,则可能需要sudo
。)
答案 1 :(得分:3)
从here下载适用于Mac的预制JCC和pylucene egg。
截至目前,最新版本为JCC-2.8和lucene-3.1.0 for python 2.6,所以下面我将使用easy_install-2.6和python2.6。
安装它们:
$ sudo easy_install-2.6 JCC-*.egg
$ sudo easy_install-2.6 lucene-*.egg
测试:
$ python2.6
>>> import jcc
>>> import lucene
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Python/2.6/site-packages/lucene-3.1.0-py2.6-macosx-10.6-universal.egg/lucene/__init__.py", line 7, in <module>
import _lucene
ImportError: dlopen(/Library/Python/2.6/site-packages/lucene-3.1.0-py2.6-macosx-10.6-universal.egg/lucene/_lucene.so, 2): Library not loaded: @rpath/libjcc.dylib
Referenced from: /Library/Python/2.6/site-packages/lucene-3.1.0-py2.6-macosx-10.6-universal.egg/lucene/_lucene.so
Reason: image not found
如果您收到上述错误,只需在libjcc.dylib
中创建/usr/local/lib/
的符号链接即可解决此问题。 libjcc.dylib
应位于site-packages/JCC-*.egg/
内。
>>> jcc.__file__
'/Library/Python/2.6/site-packages/JCC-2.8-py2.6-macosx-10.7-intel.egg/jcc/__init__.pyc'
>>> ^D
$ ln -s /Library/Python/2.6/site-packages/JCC-2.8-py2.6-macosx-10.7-intel.egg/libjcc.dylib /usr/local/lib/
$ python2.6
>>> import jcc, lucene
>>>