Uncaught PHP Exception Doctrine \ ORM \ ORMException: "Неизвестное имя пространства имен псевдонима" AppBundle "."

Я только начал свой первый проект с композитором и хотел настроить базу данных и классы для нее. Однако я застрял. Я получаю вышеуказанную ошибку в prod.log

Я последовал этому руководству: http://symfony.com/doc/current/book/doctrine.html

Я создал базу данных

php bin/console doctrine:database:create

затем захотелось создать объект

php bin/console doctrine:generate:entity

Когда меня AppBundle:Product The Entity shortcut name я ввел AppBundle:Product

а затем создали поля базы данных и т. д.

И я получаю это сообщение

Генерация сущностей

Создание класса сущности src / AppBundle / Entity / Product.php: OK!
Создание класса репозитория src / AppBundle / Repository / ProductRepository.php: ОК!

Все в порядке! Теперь приступайте к работе :).

Значит, это звучит так, как будто все работает, верно?

Теперь в моем ProductController я использовал это

 $products = $this->getDoctrine() ->getRepository('AppBundle:Product') ->findAll(); 

и я получаю ошибку

 [2016-02-15 18:56:14] request.CRITICAL: Uncaught PHP Exception Doctrine\ORM\ORMException: "Unknown Entity namespace alias 'AppBundle'." at /home/vagrant/work/homestead/test/vendor/doctrine/orm/lib/Doctrine/ORM/ORMException.php line 271 {"exception":"[object] (Doctrine\\ORM\\ORMException(code: 0): Unknown Entity namespace alias 'AppBundle'. at /home/vagrant/work/homestead/test/vendor/doctrine/orm/lib/Doctrine/ORM/ORMException.php:271)"} [] 

Я также пробовал

 ->getRepository('AppBundle\Entity\Product') 

но здесь я получаю сообщение

 [2016-02-15 19:01:39] request.CRITICAL: Uncaught PHP Exception Doctrine\Common\Persistence\Mapping\MappingException: "The class 'AppBundle\Entity\Product' was not found in the chain configured namespaces " at /home/vagrant/work/homestead/test/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/MappingException.php line 37 {"exception":"[object] (Doctrine\\Common\\Persistence\\Mapping\\MappingException(code: 0): The class 'AppBundle\\Entity\\Product' was not found in the chain configured namespaces at /home/vagrant/work/homestead/test/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/MappingException.php:37)"} [] 

Как я могу заставить это работать / я только начал с проекта. Однако Учение создало классы. У меня это так

 /src /src/AppBundle/ /src/AppBundle/Entity Product.php /src/AppBundle/Repository ProductRepository.php 

Кроме того, в Product.php это в комментариях аннотаций (если это помогает)

  * @ORM\Entity(repositoryClass="AppBundle\Repository\ProductRepository") 

Кроме того, при попытке этой команды php bin/console doctrine:generate:entities AppBundle для воссоздания сущностей, я не получаю сообщение об ошибке.

Я получаю

 Generating entities for bundle "AppBundle" > backing up Product.php to Product.php~ > generating AppBundle\Entity\Product 

Решение – это удаление файлов кеша, поэтому это необходимо, если вы работаете в режиме производства. В режиме отладки это делается автоматически. Конечно, сделайте это вручную, просто отбросьте папку prod под var, если вы находитесь в 3.x, в 2.x в приложении.

Команда очистки кеша для 2.x:

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