gpt4 book ai didi

php - Doctrine\Common\Persistence\Mapping\Driver 丢失

转载 作者:行者123 更新时间:2023-12-03 23:45:25 26 4
gpt4 key购买 nike

抱歉,今天我在 Symfony 上发生了一些奇怪的事情。
我正在和一个 friend 开发一个 web 应用程序,并决定今天早上运行一个 Composer 更新。
之前一切正常,但是一旦 Composer 更新完成,我就会收到一个缓存:清除错误。这是关于如何Doctrine\Common\Persistence\ManagerRegistry;在几个存储库中都没有找到,所以我尝试使用 PhpStorm 自动完成,它可以解析为 Doctrine\Persistence\ManagerRegistry都好。
问题是,一旦我更正了所有存储库,尝试运行 php bin/console 时出现以下错误。 :

Symfony\Component\ErrorHandler\Error\ClassNotFoundError^ {#4524
#message: """
Attempted to load class "MappingDriverChain" from namespace "Doctrine\Common\Persistence\Mapping\Driver".\n
Did you forget a "use" statement for "Doctrine\Persistence\Mapping\Driver\MappingDriverChain"?
"""
#code: 0
#file: "./var/cache/dev/ContainerO7VJLRg/App_KernelDevDebugContainer.php"
#line: 1223
trace: {
./var/cache/dev/ContainerO7VJLRg/App_KernelDevDebugContainer.php:1223 {
ContainerO7VJLRg\App_KernelDevDebugContainer->getDoctrine_Orm_DefaultEntityManagerService($lazyLoad = true)^

› $b = new \Doctrine\Common\Persistence\Mapping\Driver\MappingDriverChain();

}
./var/cache/dev/ContainerO7VJLRg/App_KernelDevDebugContainer.php:6427 { …}
./var/cache/dev/ContainerO7VJLRg/App_KernelDevDebugContainer.php:6472 { …}
./var/cache/dev/ContainerO7VJLRg/App_KernelDevDebugContainer.php:899 { …}
./vendor/symfony/http-kernel/CacheWarmer/CacheWarmerAggregate.php:90 { …}
./vendor/symfony/http-kernel/Kernel.php:572 { …}
./vendor/symfony/http-kernel/Kernel.php:131 { …}
./vendor/symfony/framework-bundle/Console/Application.php:168 { …}
./vendor/symfony/framework-bundle/Console/Application.php:74 { …}
./vendor/symfony/console/Application.php:140 { …}
./bin/console:42 { …}
}
}
我与没有遇到相同问题的同事分享了它。他运行 Composer 更新,他这边没有任何问题。所以我决定将我的更改推送到不同的存储库,然后克隆项目并重试。
和以前一样的错误。
在那之后,我决定从头开始创建一个新的 symfony 网站并移动文件(在拉动他的更改之后),(configs/src/templates/public 等)它就像一个魅力, bin/console完美运行, symfony server:start服务页面也很好,所以我们决定,很酷,让我们把它移到我们的共享存储库中,他将尝试克隆它并运行 composer install。
一旦他这样做,他就会得到与我完全相同的错误。
我尝试将项目克隆到另一个文件夹,结果完全一样。
顺便说一句,尽管缓存清除不起作用,我们还是在每一步都消除了缓存文件夹。
我认为这与 symfony/orm-pack有关正在更新到 2.0.0 版,但我们将其降级,但没有解决任何问题。
Symfony 版本(对我们俩而言)是 5.1 我们使用的附加库是: data-dog/audit-bundleramsey/uuid-doctrine不知道这是否有帮助。

最佳答案

很抱歉没有提前回复,但我们发现了错误。
它确实与 Doctrine 的版本有关。在 git 上,我们在更新 composer json 时传递了旧的 composer.lock 文件,因此为什么在我们克隆它后错误又回来了。
基本上,尽管我们指定 orm-pack 的 2.0.0 版本 composer.lock 总是将其限制为 1.8,并且两个版本之间的命名空间和 Doctrine 的文件夹结构发生了变化。
一旦我们删除了 composer.lock 并更新了 composer 一切正常。

关于php - Doctrine\Common\Persistence\Mapping\Driver 丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63072854/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com