执行pip安装时的ImportError

时间:2017-11-30 15:56:42

标签: python pip install setuptools

在我的虚拟环境中,我正在尝试执行'pip install'。使用setup.py,例如:

from setuptools import setup
import pbr

... some functions ...

setup(
    name='example',
    setup_requires=['pbr'],
    py_modules=['example'],

    entry_points='''
        [console_scripts]
        example=example:main
    ''',
)

问题是我收到以下错误 ImportError:没有名为pbr的模块

这似乎非常合法,因为我没有在我的虚拟环境中安装pbr但是我认为指定'setup_requires'可以解决这个问题......:/

是否有人理解为什么这不起作用并且知道如何修复它? :)

1 个答案:

答案 0 :(得分:0)

在运行import pbr之前,脚本会setup(),因此setup()没有机会安装pbr

修复方法是在运行pbr之前不导入setup()。见https://docs.openstack.org/pbr/latest/user/using.html

#!/usr/bin/env python

from setuptools import setup

setup(
    setup_requires=['pbr'],
    pbr=True,
)