我正在尝试创建我的第一个供应商包。我在question找到了很多信息,但我被卡住了。
在我通过命令composer require vted/peary
安装的另一个项目中,文件在我的目录vendors/vted/peary
下正确显示。
但是当它尝试在AppKernel.php中添加它时:
$bundles = array(
...
new Vted\PearyBundle\VtedPearyBundle(),
...
);
我收到以下错误:
ClassNotFoundException in AppKernel.php line 24:
Attempted to load class "VtedPearyBundle" from namespace "Vted\PearyBundle".
Did you forget a "use" statement for "Vted\PearyBundle\VtedPearyBundle"?
我认为这可能是某个地方的命名问题,但我找不到它。 VtedPearyBundle.php课对我来说很好。
答案 0 :(得分:3)
您当前的捆绑结构更适合psr-4自动加载器:
{
"autoload" : {
"psr-4" : {
"Vted\\PearyBundle\\" : ""
}
}
}
或者,您可以使用target-dir
with psr-0。但是,首选psr-4自动加载器。