不使用 UnifiedInstaller 时,为什么未填充 sys.path?

When not using UnifiedInstaller, why is sys.path not populated?

当使用 zc.buildout 安装没有 UnifiedInstaller 的 Plone 时,生成的 bin/buildout 脚本有一个截断的 sys.path。我习惯于看到那里列出的鸡蛋页面,现在我只看到这些:

import sys
sys.path[0:0] = [
  '/home/campbell/Plone/repos/bika.uw/lib/python2.7/site-packages',
  '/home/campbell/Plone/repos/bika.uw/eggs/setuptools-15.1-py2.7.egg',
  ]

当 运行 bin/zeoserver 和 bin/zeoclient 时,一切都按预期工作(它们的 sys.path 稍长,但仍被截断),但我使用 bin/buildout 脚本从我的 IDE 中检测当前 sys.path,这种截断的形式让我的生活变得更加困难。

[编辑:其他更相关的问题:(如何)可以模仿 UnifiedInstaller 扩展的行为,并将所有已安装的鸡蛋插入 sys.path?]

顺便说一句,buildout.cfg 看起来像这样:

[buildout]
extends = http://dist.plone.org/release/4.3.4/versions.cfg
versions = versions

zeoserver-address = 8110
zeoclient-address = 8080
user = admin:adminsecret

parts =
    zeoserver
    zeoclient

eggs =
    Plone
    Pillow
    bika.lims
    bika.test

develop =
    .
    src/bika.lims

[lxml]
recipe = z3c.recipe.staticlxml
egg = lxml==2.3.6
force = false
static-build = true

[zeoserver]
recipe = plone.recipe.zeoserver
zeo-address = ${buildout:zeoserver-address}

[zeoclient]
recipe = plone.recipe.zope2instance
zeo-address = ${buildout:zeoserver-address}
http-address = ${buildout:zeoclient-address}
user = ${buildout:user}
eggs = ${buildout:eggs}
zeo-client = true
shared-blob = on
http-fast-listen = off

[versions]
zc.buildout=2.3.1
setuptools=15.2

我很确定bin/buildout总是只包含几个条目。

历史上包含鸡蛋列表的 bin/instance 或 bin/client。

bin/buildout 仅用于生成环境,因此不需要路径中包含的所有 python 包。

bin/clients 或 bin/instance 应设置 sys.path。在某些版本的构建中,我想我也看到它在 parts/instance/site.py

中定义