【发布时间】:2020-05-07 09:10:54
【问题描述】:
有没有办法在 setup.py 的“install_requires”中引用本地 tar.gz 文件?我有一个文件,例如C:/mymodules/mydependency/mydependency.tar.gz。我应该如何将它包含在安装文件中?我试过了:
setup(
name="mymodule",
version="1.0",
description="This is mymodule",
author="Me",
classifiers={
'Development status :: 5 - Production',
'Intended Audience :: My friends',
'Topic :: Research tools'
'Programming Language :: Python :: 3'
'Programming Language :: Python :: 3.5'
'Programming Language :: Python :: 3.6'
'Programming Language :: Python :: 3.7'
},
packages=find_packages(),
python_requires='>=3.5, <4',
install_requires=['mymodule @ C:/mymodules/mydependency/mydependency.tar.gz', # <----
dependency_links=dependency_links,
)
但是,它指出 URL 无效: "'install_requires' 必须是包含有效项目/版本要求说明符的字符串或字符串列表;给出的 URL 无效"
我也尝试在依赖链接中包含路径但没有解决问题。
我搜索了 stakcoverflow 和官方文档,但没有找到解决办法。
是否可以包含一个 localt tar.gz 文件作为依赖项?在那种情况下,它应该如何在设置文件中构建。
【问题讨论】:
-
我认为您可能需要添加
file://前缀。所以也许'mymodule @ file:///C:/mymodules/mydependency/mydependency.tar.gz':python.org/dev/peps/pep-0440/#direct-references -
我刚刚尝试过,但它仍然给出错误:“Invalid URL given”。但是,根据您提供的来源,您的建议似乎是正确的,也许我最终做错了,但感谢您的回复。
-
另外一件事:不要使用
path/to/pythonX.Y setup.py install或path/to/pythonX.Y setup.py develop,而应使用path/to/pythonX.Y -m pip install path/to/project或path/to/pythonX.Y -m pip install --editable path/to/project。 -
我发现它有效 - 文件后面有一个“/”:。谢谢你的帮助。如果您将其发布为答案,我将对其进行标记并给予支持。
标签: python-3.x setup.py