2

我正在尝试在 Buildout 中构建一个命令行项目,但我不确定如何定义要构建到 bin 目录的脚本。我记得在某处看到过这种能力,但我不记得在哪里而且文档不太好:(

4

2 回答 2

6

Eggs setup.py是定义脚本的地方。鉴于包名为 mypackage ,其中有一个 main.py 和一个运行函数 - 它看起来像这样:

setup(
  ...    
  entry_points={
    'console_scripts': ['myscriptname = mypackage.main:run'],
  },
  ...
)

在构建中,您只需使用zc.recipe.egg:script配方:

[buildout]
parts = myscripts

[myscript]
recipe = zc.recipe.egg:script
eggs = mypackage

buildout 运行后有一个可执行文件./bin/myscriptname

于 2011-09-06T20:43:52.630 回答
2

zc.recipe.egg:脚本生成。zc.recipe.egg 实际上是 zc.buildout 的一部分,但你是对的,如果你在 buildout 中处理 python 发行版,至少应该有一个明确的指示 zc.buildout 文档不完整,直到你已经阅读了 zc.recipe.egg 的文档。

于 2011-08-15T21:26:29.820 回答