Symfony 生成的 Bundle 不起作用

Symfony generated Bundle doesn't work

我刚刚使用 symfony 3.4 创建了一个新项目并生成了一个包,来自包生成的消息说一切都很好,然后我开始工作只是通过 运行 clear cache 命令它显示这个错误消息

php.exe C:\wamp64\www\bunead\bin\console cache:clear Fatal error: Class 'AnnuaireBundle\AnnuaireBundle' not found in C:\wamp64\www\bunead\app\AppKernel.php on line 19

这是我的 Appkernel.php

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 AppBundle\AppBundle(),
            new AnnuaireBundle\AnnuaireBundle(),
        ];

您需要将它添加到您的 composer 中

尝试将您的 composer.json 更改为例如:

"autoload": {
        "psr-4": {
            "": "src/"
        }
    }

在您的控制台内启动后:

composer dump-autoload

问题是 symfony 的自动加载。

打开您的 composer.json 文件并编辑:

AnnuaireBundle\AnnuaireBundle

"autoload": {
    "psr-4": {
        "AppBundle\": "src/AppBundle",
        "AnnuaireBundle\": "src/AnnuaireBundle"
    },
    "classmap": [
        "app/AppKernel.php",
        "app/AppCache.php"
    ]
},

然后,运行 composer 中的下一个命令:

作曲家转储自动加载