У меня есть собственный класс поставщика контроллеров, который работает нормально. Я попытался добавить второй, и он просто продолжает говорить:
Неустранимая ошибка: класс «Bar\BarControllerProvider» не найден в C:\xampp\htdocs\foobar\src\app.php в строке 18
У меня он настроен так же, как и первый, с
namespace Bar;
...
class BarControllerProvider implements ControllerProviderInterface {
public function connect(Application $app) {
...
$controllers = $app['controllers_factory'];
$controllers->get('/', function () use ($app) {
...
});
...
return $controllers;
}
}
И автозагрузчик настроен в композиторе:
{
"require": {
"silex/silex": "~1.3",
"doctrine/dbal": "~2.2",
"symfony/security": "^3.0"
},
"autoload" : {
"psr-0": {
"Foo": "/src/Foo",
"Bar": "/src/Bar"
}
}
}
Каталог файлов выглядит примерно так:
-config (bunch of stuff in here)
-src
|-Foo
| |-FooControllerProvider.php
|-Bar
| |-BarControllerProvider.php
|-app.php
-vendor (bunch of stuff in here)
-web (bunch of stuff in here)
-composer.json
-composer.lock
В app.php есть:
$app->mount("/foos", new Foo\FooControllerProvider());
$app->mount("/bars", new Bar\BarControllerProvider());
Я фактически удалил всю папку поставщика и установил новый композитор, и это не имело никакого значения.
Если я закомментирую монтирование баров, foos будет работать нормально. Почему он не может найти BarControllerProvider?