【发布时间】:2018-04-13 13:48:32
【问题描述】:
这个问题几乎是不言自明的。我有一个 .zip 包依赖项,我需要将其包含在我的 python 包安装中。那么如何在我的setup.py 中包含这个本地依赖项?我有 install_requires 但这会从 PyPI 加载我的依赖包,这在这种情况下不是我想要的。
我项目中最相关的文件结构如下:
myproject
|- setup.py
|- mypackage
|- __init__.py
|- vendor
|- __init__.py
|- dependencies
|- StreamingDataReader.zip
然后我尝试了...
include_package_data=True,
package_data={
'StreamingDataReader': ['mypackage/vendor/dependencies/StreamingDataReader.zip'],
}
...没有成功。我的代码仍然找不到包:ImportError: No module named 'StreamingDataReader'
【问题讨论】:
-
有几种方法可以包含数据文件。您是否阅读过
setuptools文档中的Including Data Files 部分? -
我遇到过这个
package_data,但我没有找到任何完整的例子 -
能否分享一下你项目的目录结构,包括相关文件在哪里?
-
package_data映射构造为{'Name of Pacakge': ['list', 'of', 'patterns']}。试试类似{'': ['*.zip']}的东西。这应该包括项目中的每个.zip文件。 -
谢谢。但是
['mypackage/vendor/dependencies/StreamingDataReader.zip']仍然是一种模式