jmt*_*ung 12 python pip setuptools
我写了一个依赖于openpyxl的python模块.我希望使用setuptools自动将openpxyl安装为依赖项.我读到正确的方法是在setup.py脚本中包含以下内容:
setup(name='methpipe',
version=find_version("lala", "__init__.py"),
description='Utilities',
author='Jonathan T',
author_email='jt@lala.com',
url='https://git.com...',
packages=find_packages(),
install_requires=[
'openpxyl = 2.3.3',
],
scripts=["bin/submit_run_full.py"],
cmdclass=dict(install=my_install)
)
Run Code Online (Sandbox Code Playgroud)
所以我打包了我的模块python setup.py sdist,拿了*.tar.gz文件,解压缩它,然后运行python setup.py install,并且openpyxl没有安装!
我在这做错了什么?
小智 5
尝试在install_requires和 中提供您的依赖项setup_requires。
以下来自https://pythonhosted.org/setuptools/setuptools.htmlsetuptool的文档
setup_requires
一个字符串或字符串列表,指定需要存在哪些其他发行版才能运行安装脚本。setuptools 将在处理其余的安装脚本或命令之前尝试获取这些(甚至使用 EasyInstall 下载它们)。如果您在构建过程中使用 distutils 扩展,则需要此参数;例如,处理 setup() 参数并将它们转换为 EGG-INFO 元数据文件的扩展。
(注意:setup_requires 中列出的项目不会自动安装在运行安装脚本的系统上。如果它们在本地不可用,它们只需下载到 ./.eggs 目录。如果你想安装它们,以及在运行安装脚本时可用,您应该将它们添加到 install_requires 和 setup_requires。)