use*_*874 4 php doctrine symfony composer-php symfony5
抱歉,今天 Symfony 发生了一些奇怪的事情。\n我正在与朋友一起开发一个 Web 应用程序,并决定今天早上运行 Composer 更新。\n之前一切正常,但一旦 Composer 更新完成,我收到了一个缓存:清除错误。这是关于如何Doctrine\\Common\\Persistence\\ManagerRegistry;在多个存储库上找到的,所以我尝试使用 PhpStorm 自动完成,它可以解决Doctrine\\Persistence\\ManagerRegistry所有问题。\n问题是,一旦我在所有存储库上更正了该问题,我在尝试运行时收到以下错误php bin/console:
Symfony\\Component\\ErrorHandler\\Error\\ClassNotFoundError^ {#4524\n #message: """\n Attempted to load class "MappingDriverChain" from namespace "Doctrine\\Common\\Persistence\\Mapping\\Driver".\\n\n Did you forget a "use" statement for "Doctrine\\Persistence\\Mapping\\Driver\\MappingDriverChain"?\n """\n #code: 0\n #file: "./var/cache/dev/ContainerO7VJLRg/App_KernelDevDebugContainer.php"\n #line: 1223\n trace: {\n ./var/cache/dev/ContainerO7VJLRg/App_KernelDevDebugContainer.php:1223 {\n ContainerO7VJLRg\\App_KernelDevDebugContainer->getDoctrine_Orm_DefaultEntityManagerService($lazyLoad = true)^\n \xe2\x80\xba \n \xe2\x80\xba $b = new \\Doctrine\\Common\\Persistence\\Mapping\\Driver\\MappingDriverChain();\n \xe2\x80\xba \n }\n ./var/cache/dev/ContainerO7VJLRg/App_KernelDevDebugContainer.php:6427 { \xe2\x80\xa6}\n ./var/cache/dev/ContainerO7VJLRg/App_KernelDevDebugContainer.php:6472 { \xe2\x80\xa6}\n ./var/cache/dev/ContainerO7VJLRg/App_KernelDevDebugContainer.php:899 { \xe2\x80\xa6}\n ./vendor/symfony/http-kernel/CacheWarmer/CacheWarmerAggregate.php:90 { \xe2\x80\xa6}\n ./vendor/symfony/http-kernel/Kernel.php:572 { \xe2\x80\xa6}\n ./vendor/symfony/http-kernel/Kernel.php:131 { \xe2\x80\xa6}\n ./vendor/symfony/framework-bundle/Console/Application.php:168 { \xe2\x80\xa6}\n ./vendor/symfony/framework-bundle/Console/Application.php:74 { \xe2\x80\xa6}\n ./vendor/symfony/console/Application.php:140 { \xe2\x80\xa6}\n ./bin/console:42 { \xe2\x80\xa6}\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n我与没有遇到同样问题的同事分享了它。他运行了作曲家更新,他这边没有任何问题。因此,我决定将更改推送到不同的存储库,然后克隆项目并重试。\n错误与之前相同。
\n之后我决定从头开始创建一个新的 symfony 网站并将文件移过去(也在拉动他的更改之后),(configs/src/templates/public 等)它就像一个魅力,工作bin/console完美,symfony server:start为页面提供完全正常的服务因此我们决定,很酷,让我们将其移动到我们的共享存储库中,他将尝试克隆它并运行作曲家安装。
一旦他这样做了,他就会遇到和我完全相同的错误。
\n我尝试将项目克隆到另一个文件夹,但发生了完全相同的情况。
\n顺便说一句,尽管缓存清除不起作用,但我们在每一步都消除了缓存文件夹。
\n我认为这可能与更新到 2.0.0 版本有关,symfony/orm-pack但我们降级了它,但它没有修复任何问题。
Symfony 版本(对于我们俩来说)是 5.1 我们正在使用的附加库是:data-dog/audit-bundle不确定ramsey/uuid-doctrine这是否有帮助。
抱歉没有提前回复,但我们发现了错误。
这确实与教义的版本有关。在 git 上,我们在更新composer json时传递了旧的composer.lock文件,因此当我们克隆它时,错误又回来了。
基本上,尽管我们指定了 orm-pack 的版本 2.0.0,但composer.lock 始终将其限制为 1.8,并且两个版本之间的命名空间和学说的文件夹结构都发生了变化。
一旦我们删除了composer.lock并更新了composer,一切就正常了。
| 归档时间: |
|
| 查看次数: |
4872 次 |
| 最近记录: |