Ошибка установки Symfony2: несуществующая служба «security.authentication.factory.form» - PullRequest
1 голос
/ 28 января 2012

Я пытаюсь установить Symfony2 на мою машину с Ubuntu 10.04 (32 бита), используя эти шаги , но я продолжаю получать это исключение.

$./bin/vendors install
...
HEAD is now at 41b5913 Merge pull request #27 from stof/disable_profiler
PHP Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException:  You have requested a non-existent service "security.authentication.factory.form". in /home/yvoyer/www/calendar.local/trunk/app/bootstrap.php.cache on line 202
PHP Stack trace:
PHP   1. {main}() /home/yvoyer/www/calendar.local/trunk/app/console:0
PHP   2. Symfony\Component\Console\Application->run() /home/yvoyer/www/calendar.local/trunk/app/console:22
PHP   3. Symfony\Bundle\FrameworkBundle\Console\Application->doRun() /home/yvoyer/www/calendar.local/trunk/vendor/symfony/src/Symfony/Component/Console/Application.php:118
PHP   4. Symfony\Bundle\FrameworkBundle\Console\Application->registerCommands() /home/yvoyer/www/calendar.local/trunk/vendor/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php:66
PHP   5. Symfony\Component\HttpKernel\Kernel->boot() /home/yvoyer/www/calendar.local/trunk/vendor/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php:80
PHP   6. Symfony\Component\HttpKernel\Kernel->initializeContainer() /home/yvoyer/www/calendar.local/trunk/app/bootstrap.php.cache:513
PHP   7. Symfony\Component\HttpKernel\Kernel->buildContainer() /home/yvoyer/www/calendar.local/trunk/app/bootstrap.php.cache:779
PHP   8. Symfony\Component\DependencyInjection\ContainerBuilder->compile() /home/yvoyer/www/calendar.local/trunk/app/bootstrap.php.cache:868
PHP   9. Symfony\Component\DependencyInjection\Compiler\Compiler->compile() /home/yvoyer/www/calendar.local/trunk/vendor/symfony/src/Symfony/Component/DependencyInjection/ContainerBuilder.php:437
PHP  10. Symfony\Component\HttpKernel\DependencyInjection\MergeExtensionConfigurationPass->process() /home/yvoyer/www/calendar.local/trunk/vendor/symfony/src/Symfony/Component/DependencyInjection/Compiler/Compiler.php:119
PHP  11. Symfony\Component\DependencyInjection\Compiler\MergeExtensionConfigurationPass->process() /home/yvoyer/www/calendar.local/trunk/vendor/symfony/src/Symfony/Component/HttpKernel/DependencyInjection/MergeExtensionConfigurationPass.php:39
PHP  12. Symfony\Bundle\SecurityBundle\DependencyInjection\SecurityExtension->load() /home/yvoyer/www/calendar.local/trunk/vendor/symfony/src/Symfony/Component/DependencyInjection/Compiler/MergeExtensionConfigurationPass.php:42
PHP  13. Symfony\Bundle\SecurityBundle\DependencyInjection\SecurityExtension->createListenerFactories() /home/yvoyer/www/calendar.local/trunk/vendor/symfony/src/Symfony/Bundle/SecurityBundle/DependencyInjection/SecurityExtension.php:49
PHP  14. Symfony\Component\DependencyInjection\ContainerBuilder->get() /home/yvoyer/www/calendar.local/trunk/vendor/symfony/src/Symfony/Bundle/SecurityBundle/DependencyInjection/SecurityExtension.php:596
PHP  15. Symfony\Component\DependencyInjection\Container->get() /home/yvoyer/www/calendar.local/trunk/vendor/symfony/src/Symfony/Component/DependencyInjection/ContainerBuilder.php:316
Segmentation fault

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

Любая помощь приветствуется

Обновление:

Я пыталсяпереустановить все с нуля из источников 2.0.10 вместо 2.0.9, и я получаю ту же ошибку.

Мне удается настроить Symfony2 с теми же источниками на другом ПК (Ubuntu 11.10 64 бит),без каких-либо ошибок.

  • При запуске app / check.php все в порядке, кроме PHP Accelerator.Я не понимаю, почему это может вызывать какие-либо проблемы, поскольку без него на другом компьютере он работает нормально.
  • Может ли быть проблема с моей версией php (5.3.2)?

Есть ли у вас какие-либо предложения?

Обновление # 2 :

Я попытался восстановить файл bootstrap.php.cache, как предложено inanimatt, но безуспешно.Я только что заметил, что ./bin/vendors install вызвал ошибку сегментации, о которой я не знаю, было ли это раньше ...

Кроме того, я отследил, какая команда вызвала проблему в скрипте вендоров.Я обнаружил, что все прошло нормально, пока скрипт не запускает app/console assets:install.

Есть подсказка?

Ответы [ 3 ]

2 голосов
/ 01 марта 2012

После долгих попыток ответить на все вышеперечисленные вопросы я, наконец, обнаружил, в чем проблема.

Проблема заключалась в том, что у меня установлен xdebug на сервере и в конфигурации xdebug.show_exception_traceбыл установлен на 1. Это показывало мне все возникающие исключения и приводило к трассировке стека выше.

Я прокомментировал строку, и все пошло как обычно при настройке приложения.

Спасиботе, кто помог мне, и я надеюсь, что это может помочь кому-то еще.

0 голосов
/ 17 февраля 2012

Похоже, ошибка выше заключается в том, что в загрузочном кеше чего-то не хватает, что не позволяет выполнить задачи, выполняемые сценарием bin/vendors install.Попробуйте удалить этот файл и перестроить его, выполнив:

php vendor/bundles/Sensio/Bundle/DistributionBundle/Resources/bin/build_bootstrap.php

Почему это трудно понять - вы изменили какой-либо из файлов конфигурации?

Если вы устанавливаете Symfony2Standard Edition с поставщиками, вам не нужно запускать bin/vendors install.Вам нужно только запустить app/check.php, чтобы убедиться, что системные настройки и права доступа к файлам в порядке, а затем отредактировать app/config/parameters.ini, чтобы настроить базу данных.

0 голосов
/ 29 января 2012
  1. Очистить кэш
  2. Выполните: php app / config-check
  3. Проверьте конфигурацию: https://github.com/stof/StofDoctrineExtensionsBundle
  4. Проверьте yourvhost / check.php для проверки необходимых php libs

С уважением, Макс

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...