php - psr-0 到 psr-4 更改后无法生成实体

标签 php symfony doctrine psr-0 psr-4

我将我的一些 bundle 的 psr-0 自动加载更改为 psr-4。现在,当我尝试使用 app/console 命令生成实体时,它给了我

Can't find base path for "MbDbFooBundle" (path: "/home/roland/projects/rolandtest/mbmbisbundle/Symfony/vendor/mb/mb-db-foo-bundle", destination: "/home/roland/projects/rolandtest/mbmbisbundle/Symfony/vendor/mb/mb-db-foo-bundle").

起初我以为是生成的自动加载器有问题。但是当我对我的项目进行新的克隆,然后运行 ​​composer update 来完成 vendors 时,它仍然给我这个错误。

最佳答案

关于 Doctrine 的代码生成部分,它不支持 PSR-4。只有 PSR-0。原因是它直接将类/命名空间路径转换为文件系统路径(例如,将\转换为/)。这不适用于 PSR-4,因为它允许命名空间不直接与文件系统路径相关。

https://github.com/doctrine/DoctrineBundle/issues/282

关于php - psr-0 到 psr-4 更改后无法生成实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22198694/

相关文章:

php - Doctrine manyToMany SQLSTATE [HY000] : General error: 1005 Can't create table (errno: 150)

php - 根据 Doctrine 进行迁移时出错

php - 通过 $_ENV 使用 .env 文件中的参数是否正常?

php - php 应用程序中的命令模式 : how to handle controller actions?

php - 从 Woocommerce 中的我的帐户订单表中删除项目计数

symfony - 如何使用 Composer 更新单个库?

Symfony2 : How to pass a URL to a service (without passing entire router service)

php - Symfony/查询生成器 : "myEntityAlias.myEntity.id" <- possible?

javascript - 使用 node.js 注册/登录示例

php - 我可以在 PHP 类上定义 CONST 吗?