我正在尝试使用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
然后没有安装数据文件。我有一个名为的目录
在dist-packages下的EnrichPy-0.1.001-py2.6.egg/enrichpy/
,但它只包含我的源文件,而不包含我的数据文件。
当easy_install解压缩egg文件时,有人可以建议我需要做些什么才能安装package_data文件?
注意:
该套餐位于http://github.com/roban/EnrichPy
我可以通过运行来测试它: import richpy.yields enrichpy.yields.Data_vdHG()。数据 如果退出时没有错误,则pkg_resources正在查找已安装的数据。
答案 0 :(得分:1)
问题解决了,感谢P.J. Eby在distutils-sig电子邮件列表上的帮助:
http://mail.python.org/pipermail/distutils-sig/2010-November/017054.html
只需要重命名文件以避免使用'..'字符串。