我之前创建了一个python包并将其上传到pypi。该程序包取决于setup.py
文件中定义的其他2个程序包:
from setuptools import setup
from dominos.version import Version
def readme():
with open('README.rst') as file:
return file.read()
setup(name='dominos',
version=Version('0.0.1').number,
author='Tomas Basham',
url='https://github.com/tomasbasham/dominos',
license='MIT',
packages=['dominos'],
install_requires=[
'ratelimit',
'requests'
],
include_package_data=True,
zip_safe=False)
因为这两个都已安装在我的virtualenv中,所以这个包运行正常。
现在尝试在另一个python应用程序中(以及在单独的virtualenv中)使用此包,我已经定义了以下requirements.txt
文件:
dominos==0.0.1
geocoder==1.13.0
参考dominos
是我上传到pypi的包。现在运行pip install --no-cache-dir -r requirements.txt
失败,因为缺少dominos
的依赖项:
ImportError: No module named ratelimit
肯定pip
应该解决这些依赖关系,因为我已经在setup.py
dominos
文件中定义了这些依赖关系。清楚这一点会很棒。