使用 setuptools 时,我无法让安装程序拉入任何 package_data
文件。我读过的所有内容都表明以下是正确的方法。有人可以请教吗?
setup(
name='myapp',
packages=find_packages(),
package_data={
'myapp': ['data/*.txt'],
},
include_package_data=True,
zip_safe=False,
install_requires=['distribute'],
)
其中 myapp/data/
是数据文件的位置。
最佳答案
我意识到这是一个老问题,但是对于通过 Google 找到他们的方式的人来说:package_data
是一个低调,dirty lie .它仅在构建 binary 包(python setup.py bdist ...
)时使用,但在构建源包(python setup.py sdist ...
)。这当然是荒谬的——人们会期望构建源代码分发会产生一组文件,这些文件可以发送给其他人以构建二进制分发。
无论如何,使用 MANIFEST.in
适用于二进制和源代码分发。
关于python - 如何使用 setuptools/distutils 包含包数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7522250/