无管理员权限安装python_无管理员权限的Linux系统中安装pylucene

本文详细介绍了如何在没有管理员权限的Linux环境中,通过Anaconda安装的Python3,一步步安装JAVA、ANT和Ivy,最后成功编译和安装pylucene。关键步骤包括设置环境变量、修改配置文件,并确保所有依赖项正确无误。
摘要由CSDN通过智能技术生成

问题情境:

(1)学校服务器,无管理员权限,只能在自己的目录下面安装软件,对管理员安装的JAVA,ANT等不能够增删查改

(2)通过anaconda安装了python3,并更改了本地的path

安装步骤:

(1)安装JAVA环境:

执行java -version,发现服务器上已经安装了openjdk,所以不打算重新安装。

执行echo $JAVA_HOME,系统并未设置JAVA_HOME

通过参考网上帖子,在 /usr/lib/jvm/路径下找到了系统安装的很多版本的open_jdk,选择最新版本,构建    JAVA_HOME=/usr/lib/jvm/java-openjdk

打开本地.bashrc文件(vi .bashrc)(这个文件是用户每次登录默认执行的文件,如果有管理员权限则配置文件:/etc/profile)

在.bashrc文件末尾加上:

export JAVA_HOME=/usr/lib/jvm/java-openjdk

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=${JAVA_HOME}/bin:${PATH}

(2) 安装ANT

官网下载Binary Distributions,解压到你自己设定的路径下(tar zxvf apache-ant-1.10.5-bin.tar.gz),然后编辑.bashrc文件,配置环境变量:

在.bashrc文件末尾加上:

export JAVA_HOME=/usr/lib/jvm/java-openjdk

export ANT_HOME=/u/cherry/apache-ant-1.10.5

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=${JAVA_HOME}/bin:${PATH}:${ANT_HOME}/bin

(3) 安装Ivy

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

cp ivy-2.4.0.jar /u/cherry/apache-ant-1.10.5/lib

(5) 编译jcc (进入cd pylucene-7.6.0/jcc目录下)

打开vi setup.py,修改jdk路径(主要是这一句 'linux': '/usr/lib/jvm/java-openjdk')

JDK = {

# 'darwin': JAVAHOME or JAVAFRAMEWORKS,

'darwin': JAVAHOME or JAVAFRAMEWORKS,

'ipod': '/usr/include/gcc',

'linux': '/usr/lib/jvm/java-openjdk',

# 'linux': '/usr/lib/jvm/java-8-oracle',

'sunos5': '/usr/jdk/instances/jdk1.6.0',

'win32': JAVAHOME,

'mingw32': JAVAHOME,

'win32': '/usr/bin/java/1.8.0_212',

'mingw32': '/usr/bin/java/1.8.0_212',

'freebsd7': '/usr/local/diablo-jdk1.6.0'

}

JAVAC = {

'darwin': ['javac', '-source', '1.5', '-target', '1.5'],

'ipod': ['jikes', '-cp', '/usr/share/classpath/glibj.zip'],

# 'linux': ['javac'],

'linux': ['/usr/lib/jvm/java-openjdk/bin/javac'],

'sunos5': ['javac'],

'win32': ['%(win32)s/bin/javac.exe' % (JDK)],

'mingw32': ['%(mingw32)s/bin/javac.exe' % (JDK)],

'freebsd7': ['javac'],

}

JAVADOC = {

'darwin': ['javadoc'],

'ipod': [],

# 'linux': ['javadoc'],

'linux': ['/usr/lib/jvm/java-openjdk/bin/javac'],

'sunos5': ['javadoc'],

'win32': ['%(win32)s/bin/javadoc.exe' % (JDK)],

'mingw32': ['%(mingw32)s/bin/javadoc.exe' % (JDK)],

'freebsd7': ['javadoc'],

}

编译并验证安装成功:

python setup.py build

python setup.py install

python -m jcc

我的python是通过anaconda 安装的,所以python的路径:/nfs/nfs7/home/cherry/anaconda3/bin/python3

修改Makefile文件(主要修改:1-ANT和JAVA_HOME路径,2-Python路径,3-保证lvy已经安装成功)

cd ..到pylucene的根目录

# Linux (Debian Jessie 64-bit, Python 3.4.2, Oracle Java 1.8

# Be sure to also set JDK['linux'] in jcc's setup.py to the JAVA_HOME value

# used below for ANT (and rebuild jcc after changing it).

PREFIX_PYTHON=/usr

#ANT=JAVA_HOME=/usr/lib/jvm/java-8-oracle /usr/bin/ant

ANT=JAVA_HOME=/usr/lib/jvm/java-openjdk /nfs/nfs7/home/cherry/apache-ant-1.10.5/bin/ant

#PYTHON=$(PREFIX_PYTHON)/bin/python3

PYTHON=/nfs/nfs7/home/cherry/anaconda3/bin/python3

JCC=$(PYTHON) -m jcc

#--shared

#JCC=$(PYTHON) -m jcc.__main__ --shared

NUM_FILES=8

编译:

make

make install

测试是否成功:

python -c "import lucene"

总结一句话:

搞清楚你所有的 ant,jdk,python路径,基本上就没有问题了。

完结,散花~

标签:bin,pylucene,JAVA,lib,java,管理员,usr,Linux,HOME

来源: https://blog.csdn.net/txlCandy/article/details/89736785

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PyLucene 是一个 Python 的 Lucene 库,它提供了 Python 与 Java 编写的 Lucene API 的绑定,可以用于创建和操作 Lucene 索引,执行全文搜索和文本分析等任务。下面是 PyLucene安装使用方法: 1. 安装 Java PyLucene 是一个 Python 库,但它依赖于 Java 的 Lucene 库。因此,在安装 PyLucene 之前,需要先安装 Java。 2. 安装 JCC JCC 是一个 Java 原生代码编译器,用于为 Python 和 Java 之间的代码绑定生成 JNI 接口。PyLucene 使用 JCC 进行 Python 与 Java 的交互。因此,需要先安装 JCC。 可以使用以下命令安装 JCC: ``` pip install https://github.com/elasticdog/jcc/archive/master.zip ``` 3. 下载 PyLucene 可以从 Apache Lucene 的官方网站下载 PyLucene 的源代码,下载地址为: http://www.apache.org/dyn/closer.lua/lucene/pylucene/ 选择与您使用Python 版本和操作系统相应的版本进行下载。 4. 编译 PyLucene 在下载 PyLucene 的源代码后,需要对其进行编译。在编译 PyLucene 之前,需要确保已经安装了 setuptools、numpy 和 Cython。 在命令行进入 PyLucene 的源代码目录,运行以下命令进行编译: ``` make make install ``` 上述命令将会编译 PyLucene 并将其安装Python 的 site-packages 目录下。 5. 使用 PyLucene 安装完成 PyLucene 后,就可以使用其提供的 API 进行全文搜索和文本分析等任务了。下面是一个简单的示例: ```python from lucene import * # 初始化 Java 虚拟机 vm_env = getVMEnv() # 创建索引 index_dir = SimpleFSDirectory(Paths.get('index')) analyzer = StandardAnalyzer() index_writer = IndexWriter(index_dir, IndexWriterConfig(analyzer)) doc = Document() doc.add(StringField('title', 'Hello World', Field.Store.YES)) index_writer.addDocument(doc) index_writer.commit() index_writer.close() # 执行搜索 index_reader = DirectoryReader.open(index_dir) index_searcher = IndexSearcher(index_reader) query_parser = QueryParser('title', analyzer) query = query_parser.parse('Hello') hits = index_searcher.search(query, 10).scoreDocs for hit in hits: doc = index_searcher.doc(hit.doc) print(doc.get('title')) index_reader.close() ``` 上述示例程序首先初始化了 Java 虚拟机,然后创建了一个包含一个文档的索引,并将其保存到磁盘上。接着,它执行了一个基于查询的搜索操作,并输出了搜索结果。 更多 PyLucene 的用法可以参考其官方文档: https://lucene.apache.org/pylucene/api.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值