Получаю ошибку PasteScript при попытке обслужить существующее приложение Pylons

StackOverflow https://stackoverflow.com/questions/4199212

Вопрос

Я пытаюсь обслуживать существующее приложение Python 2.5 Pylons на OS X Snow Leopard.

Я уже установил Python 2.5 и установил его в качестве установки Python по умолчанию, установил paster и установил версию Pylons, необходимую приложению (0.9.6.1), а также другие eggs...но когда я захожу на компакт-диск в основную папку и делаю "paster serve development.ini", я получаю следующее:

File "/usr/local/bin/paster", line 5, in <module>
    from pkg_resources import load_entry_point

File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 2603, in <module>

File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 666, in require

File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 565, in resolve

pkg_resources.DistributionNotFound: PasteScript==1.7.3

Я определенно выполнил "easy_install PasteScript == 1.7.3", и я все еще получаю эту ошибку.Есть ли что-то действительно очевидное, чего я не понимаю?Помочь?

Заранее благодарю.

Это было полезно?

Решение

У вас, вероятно, есть несколько установок Python в вашей системе. А easy_install Команда, вероятно, установила пастбилет в другой интерпретатор Python. У вас может быть конкретный easy_install-2.5 Команда, которую вы должны использовать вместо этого для интерпретатора Python 2.5.

Однако настоятельно рекомендуется использование VirtualEnv в вашей системе разработки.

VirtualEnv позволяет создавать песочницу, связанную с определенным интерпретатором Python, и где вы можете установить определенные версии пакетов на основе каждого проекта.

Более подробную информацию об использовании VirtualEnv с пилонами здесь:http://wiki.pylonshq.com/display/pylonscookbook/using+a+virtualenv+sandbox

Другие советы

Возможно, это слишком просто ответ, но я бы попробовал установить в конкретную версию easy_install-2.5 PasteScript==1.7.3 Видеть Легко установить документы Для деталей.

Отредактировать первую строку в /usr/sbin/luci, а затем добавьте версию Python в нижеприведенную линию:

#!/usr/bin/python -Es

Отредактировать первую строку в /usr/bin/paster а затем добавьте версию Python в нижеприведенную линию:

#!/usr/bin/python

Я получил эту ошибку, даже когда я сделал "paster --help".PasteScript был в пакетах сайта моей виртуальной среды, и PasteScript появился в pip freeze.Проблема заключалась в том, что папка PasteScript заканчивалась на .dist-info.Было установлено другое яйцо под названием distribute, и оно находилось в начале моего sys.path.У него была более старая версия pkg_resources, которая не знала о папках egg ".dist-info".Логика pkg_resources, о которой идет речь, находится в функции find_on_path.Вы можете поискать в pkg_resources "dist-info".Итак, "pkg_resources.get_distribution('PasteScript')" в paste/script/command.py не найдено PasteScript, хотя он был установлен.Чтобы узнать, какие pkg_resources используются, вы можете запустить python и перейти "импортировать pkg_resources;вывести pkg_resources".Удаление "distribute" исправило мою текущую ошибку (но затем я столкнулся с другой ошибкой).

Обновить:Я устанавливал последнюю версию ckan 2.6.2 (апрель 2017) на Ubuntu precise (версия 12, немного старая, выпущена в 2012-2014 годах) (полностью обновлена с помощью apt-get update, установлена через vagrant image ubuntu / precise64).Он сломан.Использование образа ubuntu / trusty64 работает отлично.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top