首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Ubuntu10.04上安装PyLucene 3.0.3

在Ubuntu10.04上安装PyLucene 3.0.3
EN

Stack Overflow用户
提问于 2011-04-06 01:49:52
回答 1查看 2.5K关注 0票数 5

我试图在Ubuntu10.04上安装PyLucene 3.0.3。事实证明,这相当具有挑战性,但到目前为止,我已经:

  • 按照PyLucene文档中的指示,修补了允许构建JCC的设置工具。
  • 通过: cd pylucene- 3.0.3 -1/ JCC;python setup.py build
  • 通过ant构建了Lucene 3.0.3,并将jar安装到/usr/share/java/lucene-core-3.0.3-dev.jar。注意,我已经将Ubuntu的默认Lucene包安装到/usr/share/java/lucene 2.9.2.jar中,它也与/usr/share/java/lucene-core.jar

有符号链接。

我现在正在尝试“制作”PyLucene,但是我得到了错误:

代码语言:javascript
复制
cd lucene-java-3.0.3;  -Dversion=3.0.3
/bin/sh: -Dversion=3.0.3: not found
make: *** [lucene-java-3.0.3/build/lucene-core-3.0.3.jar] Error 127

文件pylucene-3.0.3-1/doc/documentation/install.html提到“编辑Makefile以匹配您的环境”,但我不知道这意味着什么。makefile似乎包含与我安装的版本相同的Lucene版本号。为了构建PyLucene,我还需要如何编辑我的makefile?

编辑:删除makefile中的一个部分(感谢Torsten)在Ubuntu8.10下编译(说真的,8.10?!)其中大部分似乎编译得很好,但我仍然收到了一个错误。有几个组件报告说“构建成功”,但最终构建以以下方式结束:

代码语言:javascript
复制
/usr/bin/python -m jcc --shared --jar lucene-java-3.0.3/build/lucene-core-3.0.3.jar --jar lucene-java-3.0.3/build/contrib/snowball/lucene-snowball-3.0.3.jar --jar lucene-java-3.0.3/build/contrib/analyzers/common/lucene-analyzers-3.0.3.jar --jar lucene-java-3.0.3/build/contrib/regex/lucene-regex-3.0.3.jar --jar lucene-java-3.0.3/build/contrib/memory/lucene-memory-3.0.3.jar --jar lucene-java-3.0.3/build/contrib/highlighter/lucene-highlighter-3.0.3.jar --jar lucene-java-3.0.3/build/contrib/queries/lucene-queries-3.0.3.jar --jar build/jar/extensions.jar  --package java.lang java.lang.System java.lang.Runtime --package java.util java.util.Arrays java.text.SimpleDateFormat java.text.DecimalFormat java.text.Collator --package java.io java.io.StringReader java.io.InputStreamReader java.io.FileInputStream --exclude org.apache.lucene.queryParser.Token --exclude org.apache.lucene.queryParser.TokenMgrError --exclude org.apache.lucene.queryParser.QueryParserTokenManager --exclude org.apache.lucene.queryParser.ParseException --exclude org.apache.lucene.search.regex.JakartaRegexpCapabilities --exclude org.apache.regexp.RegexpTunnel --python lucene --mapping org.apache.lucene.document.Document 'get:(Ljava/lang/String;)Ljava/lang/String;' --mapping java.util.Properties 'getProperty:(Ljava/lang/String;)Ljava/lang/String;' --rename org.apache.lucene.search.highlight.SpanScorer=HighlighterSpanScorer --version 3.0.3 --module python/collections.py --files 200 --build 
/usr/bin/python: jcc is a package and cannot be directly executed
make: *** [compile] Error 1
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-04-06 03:19:52

我以前这样做过(但是没有在Ubuntu中安装Lucene的默认包)。我不知道Error 127到底是什么,但在我的例子中,它有助于从生成文件中的原始NUM_FILES=2中设置NUM_FILES=200。由于某些原因,当NUM_FILES=2在内存中创建非常大的文件时,ubuntu将无法处理这些文件。有了NUM_FILES=200,块就更小了,而且安装工作在最后为我工作。对于python2.6,您还必须在Makefile中更改JCC设置(参见下面)。

在这篇文章中,对我来说很重要的部分是:

代码语言:javascript
复制
# Linux     (Ubuntu 8.10 64-bit, Python 2.5.2, OpenJDK 1.6, setuptools 0.6c9)
PREFIX_PYTHON=/usr
ANT=ant
PYTHON=$(PREFIX_PYTHON)/bin/python
JCC=$(PYTHON) -m jcc.__main__ --shared
NUM_FILES=200
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5560648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档