2016-07-11 3 views
1

После обновления до последней версии Symfony от 3.0.2 до 3.1.2 при запуске команды.Symfony 3.1.2 «Профайлер сервиса» имеет зависимость от несуществующей службы «debug.security.access.decision_manager». »

php bin/console cache:clear --env=prod 

теперь я получаю следующее сообщение об ошибке:

[Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException] The service "profiler" has a dependency on a non-existent service "debug.security.access.decision_manager".

Кто-нибудь знает, почему это произошло, и что я мог сделать, чтобы решить эту проблему? При необходимости я могу добавить любую дополнительную информацию. Заранее спасибо!!!

ответ

1

Проблема связана с тем фактом, что я включал отладку ресурсов в производственной среде. Я выполнял тесты на механизмах кэширования и забыл удалить включение из файлов config.yml и AppKernel.php.

 if (in_array($this->getEnvironment(), ['dev','test','prod'], true)) { 
      $bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle(); 
      $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle(); 
      $bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle(); 
      $bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle(); 
      //... Extensions From Base 
      $bundles[] = new Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle(); 
    } 

как таковой для создания экземпляра AppKernel необходимо, чтобы параметр debug был установлен в true.

$kernel = new AppKernel('prod', true); 

В противном случае это вызовет первоначальный вопрос, который я задал, чтобы этот вопрос исправить.

 Смежные вопросы

  • Нет связанных вопросов^_^