【问题标题】:Symfony 2.1 configuration of FOSUserBundle 'Class 'FOS\UserBundle\FOSUserBundle' not found in app/AppKernel.php在 app/AppKernel.php 中找不到 FOSUserBundle 'Class 'FOS\UserBundle\FOSUserBundle' 的 Symfony 2.1 配置
【发布时间】:2012-11-07 22:47:02
【问题描述】:

我在 Windows 上使用 symfony,并尝试按照official documentation 中的说明配置 FOSUserBundle

当我运行 php app/console doctrine:schema:update --force 时,我会收到以下消息:

Class 'FOS\UserBundle\FOSUserBundle' not found in app/AppKernel.php line 24;

我按照我的方式配置了 AppKernel.php:

public function registerBundles()
{
    $bundles = array(
        // The rest
        new FOS\UserBundle\FOSUserBundle(),
    );

    return $bundles;
}

我的FOSUserBundle.php 文件位于vendor/friendsofsymfony/user-bundle/FOS/UserBundle

【问题讨论】:

  • 你使用的是 symfony 2.0 还是 2.1?作曲家还是供应商?如果是供应商,您是否更新了 autoload.php 并清除了缓存?
  • 显示位于app目录下的autoload.php文件
  • @Sgoettschkes 的问题是 2.1,所以他将使用作曲家
  • 您是否启动了“$ php bin/vendors install”?

标签: php windows symfony wamp fosuserbundle


【解决方案1】:

我认为您还需要在自动加载示例中注册一个命名空间:

$loader->registerNamespaces(array(
        //all the rest
        'FOS' => $vendor_dir . '/bundles',
));

这里应该由作曲家完成。所以运行php composer update。如果您使用像APC 这样的缓存,请记住重新启动apache。 但请记住,APC 是从 bootstrap.php.cache 加载的,女巫是由 php composer update 生成的。

【讨论】:

    【解决方案2】:

    我遇到了同样的问题。我发现 FOSUserBundle 没有正确安装。您应该删除您的 /vendor/friendsofsymfony/ 目录,然后使用以下命令运行更新包:

    php composer.phar update friendsofsymfony/user-bundle
    

    这对我有用。我希望它可以帮助遇到同样问题的其他人。

    【讨论】:

      猜你喜欢
      • 2014-09-12
      • 2018-01-19
      • 2014-12-11
      • 1970-01-01
      • 1970-01-01
      • 2018-09-29
      • 1970-01-01
      • 2015-12-05
      • 2018-05-30
      相关资源
      最近更新 更多