2009-10-25 1 views
0

У меня есть установка trac, которая корректно работает из командной строки. Я развернула trac.cgi в нужный каталог, но когда я открываю страницу, я получаю:Ошибка импорта пакета python

Trac detected an internal error: No module named pkg_resources 

Traceback (most recent call last): 
    File "/some/path/htdocs/trac.cgi", line 22, in ? 
    import pkg_resources 
ImportError: No module named pkg_resources 

pkg_resources установлен. Я могу импортировать его, когда я запускаю python из командной строки. Разрешения правы (я могу прочитать site-packages/pkg_resources.py). Правильно sys.path (включает каталог сайтов-пакетов). Файл начинается с:

try: 
    import os 
    import pkg_resources 

поэтому пути не изменяются до отказа.

Есть ли другой случай, когда импорт может потерпеть неудачу таким образом?

+0

Почему бы не переформулировать свой вопрос и не опубликовать свой ответ и принять его. Таким образом, он больше не будет отображаться как «без ответа». – exhuma

ответ

0

Я нашел ответ в конце. Сценарий запускался в кластере - поскольку я использовал установку виртуального питона, некоторые символические ссылки не разрешались на других узлах. Они были в порядке только на машине, которую я тестировал.

Установка setuptools в папке, созданной виртуальным-python (т. Е. В каталоге, который реплицируется между всеми серверами).

1

Добавить файл __ INIT __ .py в каталог, где у вас уже есть pkg_resources.py модуль. Это сработает для вас.