Symfony2 FOSUserBundle错误 - FileLoaderImportCircularReferenceException

时间:2015-03-30 10:41:14

标签: symfony fosuserbundle

我试图在新的symfony2项目上安装FOSUserBundle。我已经按照步骤安装了它,但我仍然遇到此错误:

FileLoaderImportCircularReferenceException in FileLoader.php line 97:
Circular reference detected in "/Users/tom/Sites/symfony/todo/app/config/routing_dev.yml" ("/Users/tom/Sites/symfony/todo/app/config/routing_dev.yml" > "/Users/tom/Sites/symfony/todo/app/config/routing.yml" > "/Users/tom/Sites/symfony/todo/app/config/routing_dev.yml").

当我尝试运行php app/console router:debug时,我收到错误:

 [Symfony\Component\Config\Exception\FileLoaderLoadException]                                              
  Cannot load resource "@FOSUserBundle/Resources/config/routing/all.xml". Make sure the "FOSUserBundle" bu  
  ndle is correctly registered and loaded in the application kernel class.     

即使我在AppKernel中加载了包。

在routing.yml中,我有(如果有帮助):

fos_user:
    resource: "@FOSUserBundle/Resources/config/routing/all.xml"

似乎无法找到任何相关信息,但如果我没有足够好地搜索,我会道歉。

4 个答案:

答案 0 :(得分:3)

已从项目中删除了AcmeDemoBundle,但尚未从routing_dev.yml文件中删除相关的路由代码。

答案 1 :(得分:0)

如果缓存不适合您,请查看您是否包含在控制器中使用注释路由所需的命名空间,在我的情况下我缺少要添加:

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method;

在我的控制器中。 我打开一个问题,因为异常抛出对于这种情况是错误的,因为它说的是同样的错误:

FileLoaderImportCircularReferenceException

答案 2 :(得分:0)

如果删除该行,也会发生这种情况:

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
来自您的控制器

。 Symfony需要这一行来进行@Route注释。

答案 3 :(得分:0)

我遇到了同样的问题和错误信息,但我找不到任何循环引用。

问题:yml文件中的缩进

abc_bundle_route:
path:     /my-url/{id}
defaults: { _controller: ABCBundle:Monitor:mycontroller, id: 0 }
    requirements:
        id: -?\d+

与(正确)不一样:

abc_bundle_route:
path:     /my-url/{id}
defaults: { _controller: ABCBundle:Monitor:mycontroller, id: 0 }
requirements:
    id: -?\d+

通过设置正确的缩进,错误得以解决。