Plone/Paster - Что может заставить "paster addcontent dexterity_content" не работать?
Я пытаюсь использовать Paster для создания контента типа ловкости. Я сделал новую автономную установку Plone 4.3.4 в целевой папке, отличной от той, с которой я ранее работал, так что buildout-cache будет чистым.
Я использую ОС Ubuntu 14.04. Итак, в моей папке загрузок, в папке установщика, которую я распаковал, я печатаю в терминале:
./install.sh --target=/home/myusername/Plone2 --instance=MyProject standalone
Это устанавливает правильно. Затем я иду в MyProject в Plone2. Я изменяю сборку, чтобы изменить мой пароль, и запускаю сборку:
buildout -c develop.cfg
Затем я перехожу в папку src и создаю новый продукт с zopeskel:
../bin/zopeskel dexterity project.house
Затем я редактирую свою сборку и под яйца добавляю project.house, а в разработке - src / project.house. Затем я снова запускаю buildout, и он корректно выстраивается. Затем в папке project.house под источниками я пытаюсь запустить paster.
../../bin/paster addcontent dexterity_content
Тогда я получаю сообщение об ошибке:
Traceback (most recent call last):
File "../../bin/paster", line 264, in <module>
sys.exit(paste.script.command.run())
File "/home/pjdowney/Plone2/buildout-cache/eggs/PasteScript-1.7.5-py2.7.egg/paste/script/command.py", line 104, in run
invoke(command, command_name, options, args[1:])
File "/home/pjdowney/Plone2/buildout-cache/eggs/PasteScript-1.7.5-py2.7.egg/paste/script/command.py", line 143, in invoke
exit_code = runner.run(args)
File "/home/pjdowney/Plone2/buildout-cache/eggs/PasteScript-1.7.5-py2.7.egg/paste/script/command.py", line 238, in run
result = self.command()
File "/home/pjdowney/Plone2/buildout-cache/eggs/ZopeSkel-2.21.2-py2.7.egg/zopeskel/localcommands/__init__.py", line 70, in command
self._extend_templates(templates, args[0])
File "/home/pjdowney/Plone2/buildout-cache/eggs/ZopeSkel-2.21.2-py2.7.egg/zopeskel/localcommands/__init__.py", line 204, in _extend_templates
tmpl = entry.load()(entry.name)
File "/home/pjdowney/Plone2/buildout-cache/eggs/setuptools-7.0-py2.7.egg/pkg_resources.py", line 2184, in load
['__name__'])
ImportError: No module named dexterity.localcommands.dexterity
Я недавно установил Plone 4.3.6 в другую целевую папку. К сожалению, я никогда не пробовал использовать Paster, потому что я создавал контент для ловкости через Интернет. Может ли переход на 4.3.6 все испортить?
Моя предыдущая целевая папка все еще работает.
2 ответа
Бросок ""ImportError: ни один модуль с именем dexterity.localcommands.dexterity" + "plone"в поисковик не ведет прямо к Plone 4.3.4 - ImportError: ни один модуль с именем dexterity.localcommands.dexterity, где С. МакМахон утверждает, что это ошибка, о которой сообщается в https://github.com/plone/Installers-UnifiedInstaller/issues/33 и уже исправлен для установщиков Plone-5, но не для Plone-4.
Вероятно, ошибка вызвана самой последней версией setuptools и FWIW, однажды я случайно нашел эту информацию в твитах " глифа", которые выглядят полезными:
"Объявление о государственной службе: упростите жизнь @dstufft и не используйте пакет`python-pip 'из Debian или Ubuntu. Он не работает ". (1)
"Вместо этого установите pip и virtualenv с помощью get-pip.py, в идеале, в свой домашний каталог. (К сожалению, https://pip2014.com/ по-прежнему актуален.)" (2)
Я более подробно рассмотрю сценарий спасения get-pip.py
, когда снова запускаю пробники, но пока я просто ничего не обновляю:-D
(1) https://twitter.com/glyph/status/640980540691234816(2) https://twitter.com/glyph/status/640980540691234816
(скопировано из моего собственного комментария по аналогичной проблеме в github)
У меня были такие бои в прошлом с zopeskel / paster. В настоящее время, хотя я избегаю этого.... выбирая использовать:
- мрбоб для шаблонных яиц
- создание типов ловкости через Интернет
- ИЛИ, альтернативно, создавая типы ловкости непосредственно в коде без шаблонов - гораздо меньше шаблонного кода в архетипах ловкости
Я подозреваю, что ваша проблема в том, что в вашей установке 4.3.6 возможно обновление zopeskel или одной из его зависимостей до чего-то другого с различными требованиями к локальным командам / шаблонам. Если вы хотите продолжить эту борьбу (и я не рекомендую ее), то вы можете попробовать закрепить все ваши зависимости zopeskel до последних версий (хотя Zopeskel должен быть меньше 3.0, я считаю)