我有三个项目X、Y和Z。
Project X为Y poject执行一些管理功能。项目Y的实体在AppBudnle供应商中写入。现在,我也想为X中的项目Z做一些管理任务,但项目Z在src/Company/Z/Entity/中有所有实体。。。
我将项目Z作为供应商包含在项目X中,并进行了自动加载:
"autoload": {
"psr-0": {
"Company\Z\": ""
}
},
但当将其添加到项目X中的AppKernel时,它抱怨
PHP Fatal error: Class 'CompanyZBundleZBundle' not found in ....
我是不是在自动装载中遗漏了什么?
项目Z实体目录在X项目中如下所示:
/vendor/company/z-bundle/company/ZBundle/src/company/ZBundle/Entity
我创建了一个答案,因为注释部分太短:
在你的composer.json中,根据你自己的项目,尝试这样的东西:
"repositories": [
{
"type": "vcs",
"url": "git@github.com:You/companyZBundle.git"
},
],
"require": {
"php": ">=5.3.9",
...
"You/companyZBundle": "dev-master@dev"
}
在您的AppKernel中:
new CompanyZBundleZBundle()
而且,正如塞拉德所说,小心这个案子!