我有一个在 CentOS 上的 virtualenv 中运行的 python 应用程序.此应用程序需要一个以 rpm 形式分发和安装的 python 库.当应用程序运行时,我会得到 p>
没有名为...的模块.
我已验证 rpm 已正确安装,并且我还在 virtualenv 的 site-packages 目录中安装了 rpm,但这并没有帮助.安装 rpm 以便在虚拟环境中运行的应用程序可以访问它的正确方法是什么?
默认情况下,虚拟环境不访问站点包中的模块.您要么需要允许此类访问(toggleglobalsitepackages in virtualenvwrapper),要么使用选项 --system-site-packages 重新创建允许此类访问的 virtualenv.
I have a python application that's run inside a virtualenv on CentOS. This application needs a python library that's distributed and installed as an rpm. When the application runs I just get
no module named ....
I've verified that the rpm is installed correctly, and I've also installed the rpm in the site-packages directory of the virtualenv but that didn't help. What is the correct way to install an rpm so that an application running in a virtual environment has access to it?
By default virtual environments don't access modules in site-packages. You either need to allow such access (toggleglobalsitepackages in virtualenvwrapper) or recreate you virtualenv allowing such access with option --system-site-packages.
这篇关于应用程序找不到安装为 rpm 的 python 库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
python:不同包下同名的两个模块和类python: Two modules and classes with the same name under different packages(python:不同包下同名的两个模块和类)
配置 Python 以使用站点包的其他位置Configuring Python to use additional locations for site-packages(配置 Python 以使用站点包的其他位置)
如何在不重复导入顶级名称的情况下构造python包How to structure python packages without repeating top level name for import(如何在不重复导入顶级名称的情况下构造python包)
在 OpenShift 上安装 python 包Install python packages on OpenShift(在 OpenShift 上安装 python 包)
如何刷新 sys.path?How to refresh sys.path?(如何刷新 sys.path?)
分发带有已编译动态共享库的 Python 包Distribute a Python package with a compiled dynamic shared library(分发带有已编译动态共享库的 Python 包)