Class 在链配置的命名空间中找不到(zend 框架 2 和学说 2)

Class was not found in the chain configured namespaces (zend framework 2 and doctrine 2)

当我尝试在控制器中使用实体时出现以下错误:

The class 'Application\Entity\User' was not found in the chain configured namespaces in C:\xampp\htdocs\zf2_pr6\vendor\doctrine\common\lib\Doctrine\Common\Persistence\Mapping\MappingException.php:37

我的module.config.php配置包括

'doctrine' => array(
    'driver' => array(
        'application_entities' => array(
            'class' => 'Doctrine\ORM\Mapping\Driver\AnnotationDriver',
            'cache' => 'array',
            'paths' => array(__DIR__ . '/../src/Application/Entity')
        ),
    ),
    'connection' => array(
        'orm_default' => array(
            'driverClass' => 'Doctrine\DBAL\Driver\PDOMysql\Driver',
            'params' => array(
                'host' => 'localhost',
                'port' => '3306',
                'user' => 'root',
                'password' => '',
                'dbname' => 'zf2',
            ),
        ),
    ),
),
'orm_default' => array(
    'drivers' => array(
        'Application\Entity' => 'application_entities',
    ),
),

我还创建了其他相关文件的粘贴箱

如何解决此错误,将我的驱动程序添加到配置的命名空间链中?

您的配置不正确。目前你在 'doctrine' 键下有 'orm_default' 配置 - 这意味着驱动程序永远不会添加到 Doctrine.

您需要将驱动程序配置和 'orm_default' 配置置于同一级别,在 doctrine/driver 下。

'doctrine' => array(
    'driver' => array(

        'application_entities' => array(
            'class' => 'Doctrine\ORM\Mapping\Driver\AnnotationDriver',
            'cache' => 'array',
            'paths' => array(__DIR__ . '/../src/Application/Entity')
        ),

        'orm_default' => array(
            'drivers' => array(
                'Application\Entity' => 'application_entities',
            ),
        ),
    )
),