我目前的项目是python。对于构建包生成+单元测试运行,我使用的是Pybuilder实用程序,它非常酷。我使用轮式发行版在其他系统中安装该模块。
存在一个配置文件,应用程序从该文件读取某些设置。settings.ini文件在以下路径中,
PROJECT-ROOT
|---- src
|-main
|-python
|- foo
|- conf
| |- settings.ini
|
|-test.py
|-access.pypybuilder会自动从setup.py脚本创建build.py。问题是二进制轮分发版没有打包非python文件(*.ini文件)。在搜索SO帖子时,获得类似于添加MANIFEST.mf之类的信息将解决这个问题。但当你加入
project._manifest_include_directory('foo/conf', ('*.ini',))它只更新sdist中的foo/conf/settings.ini,而不更新bdist(轮毂)。我希望轮转文件在conf/ 目录中包含settings.ini。在googling中,获得了在setup.py中添加setup.py字段将解决此问题的信息。但是使用Pybuilder的build.py,我无法成功地做到这一点。
有人能帮我解决这个问题吗?
发布于 2016-05-25 09:55:07
我给Max(https://github.com/mriehl)发了邮件,他是github中PyBuilder代码的贡献者之一。他建议我试试project.install_file()选项。
我试过这个选择,但它对我有效。多亏了麦克斯。我想在这个帖子中分享这个信息,这样它对将来的人是有用的!
在后台,project.install_file()正在修改setup.py of distutils的data_files部分。
我在build.py中的配置如下,
@init
def initialize (project):
# File is installed relative to sys.prefix
project.install_file("Lib/site-packages/foo/conf","foo/conf/settings.ini")https://stackoverflow.com/questions/37409282
复制相似问题