Ошибка пространства имен Symfony2 DoctrineFixturesBundle - PullRequest
3 голосов
/ 11 марта 2012

У меня большая проблема с комплектом приборов, которую я не могу решить. я следуйте инструкциям, как они должны быть выполнены, добавив строки в файл deps, их установка, регистрация в автозагрузке и appkernel.

Когда я пытаюсь запустить даже только app/console, он разрывается с:

Fatal error: Class 'Doctrine\Bundle\DoctrineBundle\Command\DoctrineCommand' not found in /var/www/.../bundles/Doctrine/Bundle/FixturesBundle/ Command/LoadDataFixturesDoctrineCommand.php on line 40

Что кажется правильным, потому что у меня нет каталога DoctrineBundle под Doctrine\Bundle только DoctrineFixturesBundle. Если я изменю эту строку на Symfony\Bundle\DoctrineBundle\..., это сработает отлично, потому что этот класс фактически находится в этом пространстве имен.

Конечно, я не могу так оставить. Я искал документацию, вопросы, все, но кажется что никто не имеет такой же проблемы, поэтому я должен упустить некоторые очевидные укажите здесь.

Есть идеи?

Спасибо

1 Ответ

5 голосов
/ 11 марта 2012

Не так давно все связки Учений перешли в организацию Учений . Это вызывает некоторую путаницу в зависимости от того, какой репозиторий и ветвь вы используете.

Если вы используете Symfony 2.0.x, ваш deps должен выглядеть примерно так:

[DoctrineFixturesBundle]
    git=http://github.com/doctrine/DoctrineFixturesBundle.git
    target=bundles/Symfony/Bundle/DoctrineFixturesBundle
    version=origin/2.0

Обратите внимание, что цель / пространство имен на самом деле Symfony\Bundle\DoctrineFixturesBundle.


Однако у вас не должно возникнуть проблем с использованием последней версии DoctrineFixturesBundle с Symfony 2.0.x - при условии, что вы также обновите остальные зависимости Doctrine. Вы можете использовать это в вашем deps вместо:

[doctrine-common]
    git=http://github.com/doctrine/common.git
    version=2.2.0

[doctrine-dbal]
    git=http://github.com/doctrine/dbal.git
    version=2.2.1

[doctrine]
    git=http://github.com/doctrine/doctrine2.git
    version=2.2.0

[doctrine-fixtures]
    git=http://github.com/doctrine/data-fixtures.git

[DoctrineFixturesBundle]
    git=http://github.com/doctrine/DoctrineFixturesBundle.git
    target=bundles/Doctrine/Bundle/FixturesBundle
...