【发布时间】:2018-11-06 01:53:19
【问题描述】:
我第一次使用 Doctrine 时遇到了一个错误。我在前一天晚上离开了我的项目,并且这个错误不存在,在新机器上启动了 Web 服务器并对此表示欢迎。
致命错误:未捕获错误:类 'Doctrine\Common\Annotations\AnnotationRegistry' 未在 D:\website\vendor\doctrine\orm\lib\Doctrine\ORM\Configuration.php:156 堆栈跟踪:#0 D:\website\vendor\doctrine\orm\lib\Doctrine\ORM\Tools\Setup.php(72): Doctrine\ORM\Configuration->newDefaultAnnotationDriver(Array, true) #1 D:\网站\src\setup.php(16): Doctrine\ORM\Tools\Setup::createAnnotationMetadataConfiguration(数组, 真)#2 D:\website\src\bootstrap.php(6): include('C:\Users\admin\...') #3 D:\website\public\index.php(7): require('C:\Users\admin\...') #4 {main} 抛出 D:\website\vendor\doctrine\orm\lib\Doctrine\ORM\Configuration.php 第 156 行
我试过composer update 和composer install,都没有帮助。
use Doctrine\ORM\Tools\Setup;
use Doctrine\ORM\EntityManager;
$paths = array(ROOT . "/src/Database/Modals");
$config = $container->get('App\Providers\Config');
$dbParams = array(
'driver' => $config->get('database.driver'),
'user' => $config->get('database.user'),
'password' => $config->get('database.password'),
'dbname' => $config->get('database.name'),
);
$entityConfig = Setup::createAnnotationMetadataConfiguration($paths, true);
$entityManager = EntityManager::create($dbParams, $entityConfig);
这行代码好像抛出了异常。
$entityConfig = Setup::createAnnotationMetadataConfiguration($paths, true);
【问题讨论】:
-
您能否同时发布您的 composer.json 以及两个系统的 PHP 版本?
-
试试
composer require doctrine/annotations这是一个要求,但它可能在你的代码库中被破坏了 -
能否检查并在必要时将供应商目录添加到 excludePaths 选项?有报道称配置中的
..会破坏它
标签: php doctrine-orm doctrine