制作 python 包时将“install_requires”添加到 setup.py

Posted

技术标签:

【中文标题】制作 python 包时将“install_requires”添加到 setup.py【英文标题】:Adding 'install_requires' to setup.py when making a python package 【发布时间】:2012-04-06 07:48:03 【问题描述】:

要制作一个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",
],
)

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

distutils/dist.py:267: UserWarning: Unknown distribution option:

install_requires 是否仅适用于某些版本?

【问题讨论】:

***.com/questions/8295644 的可能答案他说切换到 Python 2.7.2 解决了这个问题。 【参考方案1】:

您需要使用 setuptools 而不是 distutils。

靠近脚本顶部,尝试替换

from distutils.core import setup

from setuptools import setup

【讨论】:

更好的是,您可以从setuptools 导入,如果这样会引发ImportErrordistutils.core 导入。【参考方案2】:
try:
    from setuptools import setup
except ImportError:
    from distutils.core import setup

【讨论】:

我在为jython安装jip的时候试过这个,发现不行。你提到的这段代码正是 setup.py 顶部的代码,我得到了 Niek 的警告消息方法。

以上是关于制作 python 包时将“install_requires”添加到 setup.py的主要内容,如果未能解决你的问题,请参考以下文章

是否有任何方法在使用 INTL 包时将这种日期格式转换为 DD-MM-YYYY [重复]

springboot加载外部依赖并在构建包时将其打入相应的目录下

制作 .deb 包时如何找出最低要求?

在制作 Laravel 包时,如何注册依赖包的服务提供者和别名?

SpringBoot启动jar包时设置临时属性

Python - 想要在它们都运行时将数据从一个脚本传递到另一个脚本