doukan4039 2017-09-13 13:48
浏览 66
已采纳

添加新捆绑包时出现Symfony3错误

I've a bundle that I created and is working in another project. I copied the Bundle folder inside the src folder, copied some segurity parameters, imported the service resource inside config.yml and add the bundle inside AppKernel.php as

new LoginBundle\LoginBundle()

And when I made a $ php bin/console doctrine:schema:validate it return this error

PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted to load class "LoginBundle" from namespace "LoginBundle".
Did you forget a "use" statement for another namespace? in {project}\app\AppKernel.php:18
Stack trace:
#0 {project}\vendor\symfony\symfony\src\Symfony\Component\HttpKernel\Kernel.php(450): AppKernel->registerBundles()
#1 {project}\vendor\symfony\symfony\src\Symfony\Component\HttpKernel\Kernel.php(116): Symfony\Component\HttpKernel\Kernel->initializeBundles()
#2 {project}\vendor\symfony\symfony\src\Symfony\Bundle\FrameworkBundle\Console\Application.php(69): Symfony\Component\HttpKernel\Kernel->boot()
#3 {project}\vendor\symfony\symfony\src\Symfony\Component\Console\Application.php(125): Symfony\Bundle\FrameworkBundle\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#4 {project}\bin\console(27): Symfo in {project}\app\AppKernel.php on line 18

EDIT

AppKernel.php content

<?php

use Symfony\Component\HttpKernel\Kernel;
use Symfony\Component\Config\Loader\LoaderInterface;

class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = [
            new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
            new Symfony\Bundle\SecurityBundle\SecurityBundle(),
            new Symfony\Bundle\TwigBundle\TwigBundle(),
            new Symfony\Bundle\MonologBundle\MonologBundle(),
            new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
            new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
            new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
            new LoginBundle\LoginBundle(),
            new AppBundle\AppBundle(),
        ];

        if (in_array($this->getEnvironment(), ['dev', 'test'], true)) {
            $bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle();
            $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
            $bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle();

            if ('dev' === $this->getEnvironment()) {
                $bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle();
                $bundles[] = new Symfony\Bundle\WebServerBundle\WebServerBundle();
            }
        }

        return $bundles;
    }

    public function getRootDir()
    {
        return __DIR__;
    }

    public function getCacheDir()
    {
        return dirname(__DIR__).'/var/cache/'.$this->getEnvironment();
    }

    public function getLogDir()
    {
        return dirname(__DIR__).'/var/logs';
    }

    public function registerContainerConfiguration(LoaderInterface $loader)
    {
        $loader->load($this->getRootDir().'/config/config_'.$this->getEnvironment().'.yml');
    }
}

And here goes the bundle file structure

bundle structure

Also this is the LoginBundle.php

namespace LoginBundle;

use Symfony\Component\HttpKernel\Bundle\Bundle;

class LoginBundle extends Bundle
{
}
  • 写回答

2条回答 默认 最新

  • dsbx40787736 2017-12-26 17:34
    关注

    My solution was generating aoutoloaders again like

    php composer.phar dump-autoload
    

    Hope it helps someone

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥188 寻找能做王者评分提取的
  • ¥15 matlab用simulink求解一个二阶微分方程,要求截图
  • ¥30 matlab解优化问题代码
  • ¥15 写论文,需要数据支撑
  • ¥15 identifier of an instance of 类 was altered from xx to xx错误
  • ¥100 反编译微信小游戏求指导
  • ¥15 docker模式webrtc-streamer 无法播放公网rtsp
  • ¥15 学不会递归,理解不了汉诺塔参数变化
  • ¥15 基于图神经网络的COVID-19药物筛选研究
  • ¥30 软件自定义无线电该怎样使用