Как я могу исправить поврежденный $PYTHONPATH?

Фантомные Документы

GhostDoc является свободным дополнением для Visual Studio, которая автоматически генерирует комментарии документации XML для C#. Или при помощи существующей документации, наследованной от базовых классов или при помощи реализованных интерфейсов, или путем выведения комментариев из имени и типа, например, методов, свойств или параметров.

6
задан Kenny Meyer 14 December 2015 в 22:36
поделиться

4 ответа

На всех сайтах, которые я искал в Google по этому поводу, говорится, что ваш PYTHONPATH установлен неправильно. Код, который вы вводите в mercurial, выглядит следующим образом:

try:
    from mercurial import demandimport; demandimport.enable()
except ImportError:
    import sys
    sys.stderr.write("abort: couldn't find mercurial libraries in [%s]\n" %
                     ' '.join(sys.path))
    sys.stderr.write("(check your install and PYTHONPATH)\n")
    sys.exit(-1)

Так где же Demandimport на вашем компьютере? В моем окне Windows он находится здесь:

>>> from mercurial import demandimport
>>> demandimport.__file__
'C:\\Python26\\lib\\site-packages\\mercurial-1.4.1-py2.6-win32.egg\\mercurial\\demandimport.pyc'

И это работает, потому что в моем PYTHONPATH есть mercurial:

>>> import sys
>>> for s in sys.path:
...     print s
...
# Other crud deleted...
C:\Python26\lib\site-packages\mercurial-1.4.1-py2.6-win32.egg
C:\Windows\system32\python26.zip
C:\Python26\DLLs
C:\Python26\lib
C:\Python26\lib\plat-win
C:\Python26\lib\lib-tk
C:\Python26
C:\Python26\lib\site-packages

В вашем PYTHONPATH не упоминается mercurial. Возможно, я бы добавил это в ваш PYTHONPATH:

/usr/local/lib/python2.6/site-packages

и переустановил mercurial из make . Этот совет хорошо сработал здесь .

Edit: И на моем компьютере с Ubuntu 9.10 я получил следующие результаты:

>>> import mercurial
>>> mercurial.__file__
'/usr/lib/pymodules/python2.6/mercurial/__init__.pyc'
>>> import sys
>>> for s in sys.path:
...     print s
...

/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg
/usr/local/lib/python2.6/dist-packages/virtualenv-1.4.3-py2.6.egg
/usr/lib/python2.6
/usr/lib/python2.6/plat-linux2
/usr/lib/python2.6/lib-tk
/usr/lib/python2.6/lib-old
/usr/lib/python2.6/lib-dynload
/usr/lib/python2.6/dist-packages
/usr/lib/python2.6/dist-packages/PIL
/usr/lib/python2.6/dist-packages/gst-0.10
/usr/lib/pymodules/python2.6
/usr/lib/python2.6/dist-packages/gtk-2.0
/usr/lib/pymodules/python2.6/gtk-2.0
/usr/local/lib/python2.6/dist-packages
/usr/local/lib/python2.6/dist-packages/PIL

И это заставляет меня думать, что проблема в том, что вам этого не хватает: /usr/lib/pymodules/python2.6[1145243 impression.

5
ответ дан 8 December 2019 в 16:04
поделиться

Находится ли mercurial в одном из путей установки библиотеки ( dist-packages или site-packages )? Вы можете использовать инструмент find , чтобы найти его?

Удалось ли вам установить небольшие библиотеки и получить к ним доступ из Python на этом компьютере?

1
ответ дан 8 December 2019 в 16:04
поделиться

Вы можете попробовать переустановить затронутые программы Python с помощью aptitude:

sudo aptitude reinstall mercurial
0
ответ дан 8 December 2019 в 16:04
поделиться

Спасибо за ваши усилия.

Я решил проблему благодаря hughdbrown . hughdbrown, вы дали мне понять, что я допустил опечатку при определении выполнения $ PYTHONPATH; вместо добавления пути /usr/lib/pymodules/python2.6 я написал / usr / lib / pymodules /, чтобы python не мог импортировать библиотеки ... Однако я исправил это и Я рад, что Mercurial и компания снова работают.

Единственная странная вещь, ПОЧЕМУ это изменилось ... Что ж, теперь я буду знать, что делать.

1
ответ дан 8 December 2019 в 16:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: