Symfony自动加载不适用于自定义Bundle

时间:2017-11-05 20:04:54

标签: php symfony composer-php autoload

在Symfony 3.3.1的项目中,我有几个"自制的"我使用composer.json导入的bundle,用这种方式指定存储库:

"repositories": [
    { "type": "git", "url": "git@github.com:MyCompany/CoreBundle.git" },
...
  ],

在同一个项目中,在src文件夹中我有另外一个Bundle,如下所示:

src/MyCompany/Bundle/OtherBundle

现在,在我的开发环境(Vagrant with Ubuntu 14.04,php 7.1,composer 1.5.2)中,它完美无缺。但在生产(完全相同的操作系统,PHP和作曲家版本)上,我收到了这个错误:

PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted to load class "MyCompanyOtherBundle" from namespace "MyCompany\Bundle\OtherBundle".

在composer.json中,我为psr-4尝试了几种配置,所有这些配置在dev中工作正常,但不是prod:

"psr-4": {
  "MyCompany\\": "src/MyCompany/"
},

"psr-4": {
      "": "src/"
    },

"psr-4": {
      "MyCompany\\Bundle\\OtherBundle": "src/MyCompany/Bundle/OtherBundle"
    },

我在完成所有这些更改后运行了composer dump-autoload,但它没有效果。

有关这是怎么回事吗?提前致谢

0 个答案:

没有答案