Если вы используете buildout
(я надеюсь, что вы используете), самый простой способ получить все zodbconvert
зависимости, правильно включенные в путь python, - это buildout
создать скрипт для вас:
[buildout]
...
parts =
...
zodbconvert
[zodbconvert]
recipe = zc.recipe.egg
eggs = ${buildout:eggs}
scripts = zodbconvert
Затем Buildout создаст для вас новый сценарий bin/zodbconvert
, который включает в себя все яйца сборки в sys.path
.
В качестве альтернативы, вы можете создать общий исполнитель сценариев Python, который включает все яйца вbuildout и может запускать произвольные скрипты;Вы можете использовать это вместо обычного интерпретатора Python для запуска произвольных сценариев Python со всеми яйцами компоновки в sys.path
:
[buildout]
...
parts =
...
zopepy
[zopepy]
recipe = zc.recipe.egg
eggs = ${buildout:eggs}
interpreter = zopepy
scripts = zopepy
Затем сценарий bin/zopepy
можно использовать для запуска произвольных сценариев Pythonсо всеми вашими яйцами сборки уже в sys.path
, поэтому bin/zopepy zodbconvert.py fstodb.conf
должен работать.
Обратите внимание, что унифицированный установщик Plone уже поставляется с включенной частью zopepy
, и мой выбор имени для этого сценария был преднамереннымиспользуя то же имя.
Если вы не используете buildout
(а в Plone 4 это не очень хорошая идея в целом), вы также можете перечислить необходимые пакеты (ZODB3, zope.interface, RelStorage)., psycopg2) в вашей переменной окружения PYTHONPATH
.