“src/Entity/Order.php): 无法打开流: 没有这样的文件或目录” - 当 make:entity - Symfony 5

Mil*_*ack 9 php entity symfony

我在 Symfony 5 中遇到了这个问题:

src/Entity/Order.php): 无法打开流: 没有这样的文件或目录

当我试图

制造商:实体

Order,将是我的新实体的名称。


是什么导致了这个问题?

几天前,我手动从我的项目中删除了一个名为 Order 的实体,因为它不能满足我当时的需求。Symfony 应用程序尝试自动加载名为 Order 的旧实体(它会跟踪该实体),但自从我删除它以来它就不存在了。这使我现在无法(重新)创建一个干净的 Order 实体。

我手动删除了什么?

  1. 实体
  2. 存储库
  3. EasyAdmin 中的 Crud 控制器(+ 链接到该实体的所有内容)

我尝试了什么?

  1. 在 VSC 中搜索 Order.php 文件
  2. php bin/console make:entity --overwrite (尝试覆盖我的 Order 实体)
  3. php bin/控制台缓存:清除

Mil*_*ack 22

是什么解决了这个问题?

运行:

作曲家转储自动加载

几秒钟后,我能够重新创建一个名为 Order 的实体,没有任何问题。 为什么 ?因为这个命令行要求 Symfony 重新加载供应商目录中的类并重新生成自动加载的文件。现在它“刷新”了类,它不会检测到我的旧订单实体,该实体必须已“缓存”在自动加载内。(如果我解释错了,请纠正我)

特别感谢:

从另一个 stackOverflow 帖子检索信息。您可以在这里找到它:symfony make:entity crash on new project,我只是回答了我自己的问题,以帮助其他人在将来更快地找到解决方案。