我正在尝试使用 setuptools package_data 选项将一些数据文件包含在 python 包中。然后我使用 pkg_resources 访问这些文件。当按原样安装 python .egg 文件(即仍然压缩)时,这非常有效。但是在安装过程中解压egg文件时,并没有安装数据文件。
换句话说,如果我运行:
python setup.py bdist_egg
cd dist
sudo easy_install -z EnrichPy-0.1.001-py2.6.egg
然后安装了 egg 文件(数据安全地压缩在里面),一切正常。
另一方面,如果我跑
sudo easy_install -Z EnrichPy-0.1.001-py2.6.egg
然后没有安装数据文件。我有一个目录叫 EnrichPy-0.1.001-py2.6.egg/enrichpy/ 在 dist-packages 下,但它只包含我的源文件,不包含我的数据文件。
谁能建议我在 easy_install 解压缩 egg 文件时需要做什么来安装 package_data 文件?
注意事项:
包可在 http://github.com/roban/EnrichPy 获得
我可以通过运行来测试它: 导入 enrichpy.yields enrichpy.yields.Data_vdHG().data 如果退出时没有错误,则 pkg_resources 正在查找已安装的数据。
请您参考如下方法:
问题已解决,感谢 distutils-sig 电子邮件列表中 P.J. Eby 的帮助:
http://mail.python.org/pipermail/distutils-sig/2010-November/017054.html
只需要重命名文件以避免 '..' 字符串。
