在制作python包时向setup.py添加'install_requires'

Nie*_*ein 45 python

要创建一个python包setup.py,我有以下内容:

setup(
    name='TowelStuff',
    version='0.1.0',
    author='J. Random Hacker',
    author_email='jrh@example.com',
    packages=['towelstuff', 'towelstuff.test'],
    scripts=['bin/stowe-towels.py','bin/wash-towels.py'],
    url='http://pypi.python.org/pypi/TowelStuff/',
    license='LICENSE.txt',
    description='Useful towel-related stuff.',
    long_description=open('README.txt').read(),
    install_requires=[
    "Django >= 1.1.1",
    "caldav == 0.1.4",
],
)
Run Code Online (Sandbox Code Playgroud)

所以我用我自己的包描述和信息重新制作了它.当我构建它时,我得到以下警告:

distutils/dist.py:267: UserWarning: Unknown distribution option:
Run Code Online (Sandbox Code Playgroud)

是否install_requires仅在某些版本的工作?

Rob*_*bon 66

您需要使用setuptools而不是distutils.

在脚本顶部附近,尝试替换

from distutils.core import setup
Run Code Online (Sandbox Code Playgroud)

from setuptools import setup
Run Code Online (Sandbox Code Playgroud)

  • 更好的是,您可以从`setuptools`导入,如果这会从`distutils.core`导出`ImportError`导入. (6认同)

Yau*_*ich 32

try:
    from setuptools import setup
except ImportError:
    from distutils.core import setup
Run Code Online (Sandbox Code Playgroud)