我想用SF4创建一个新的可重用捆绑包 . 我跟着documentation但是如果我在"src"目录中添加我的新包,则与App命名空间和composer自动加载存在冲突:
"autoload": {
"psr-4": {
"App\\": "src/",
"Acme\\TestBundle\\": "src/Acme/TestBundle/"
}
},
然后,我收到此错误:
PHP致命错误:未捕获的Symfony \ Component \ Debug \ Exception \ ClassNotFoundException:尝试从命名空间“Acme \ TestBundle”加载类“AcmeTestBundle” .
我认为这是因为PSR-4自动加载器加载了具有错误命名空间的文件(App / Acme / TestBundle / AcmeTestBundle.php) .
有没有办法解决这个问题?我也尝试为我的应用程序创建另一个包,但由于Kernel.php文件而崩溃...
此回退目录方法也不起作用:
"psr-4": {
"": "src/"
}
1 回答
要帮助PSR-4 Autoloader将Acme作为捆绑包加载,您必须从App服务目录中排除其目录:
file:config / services.yaml