У меня есть пользовательский модуль Laravel я написал, что я включаю его в моем app.php как так:Laravel 4,2 включает поставщик перед обновлением композитора
'providers' => array(
'Illuminate\Foundation\Providers\ArtisanServiceProvider',
'Illuminate\Auth\AuthServiceProvider',
'My\Custom\Provider'
);
Everytime я бег композитора обновить свои стойла говоря, что мой класс недоступен:
Error Output: PHP Fatal error: Class My\Custom\Provider not found in ProviderRepository.php on line 157
Там должен быть способ, чтобы мой провайдер в приложение конфигурации, и все еще быть в состоянии выполнить обновление композитора, в противном случае его очень трудно автоматически развернуть мой код?
редактировать То, что я сейчас найти себе делать комментирует поставщика из app.php, бегая обновление композитора, а затем снова включить поставщика и все работает нормально.
редактировать Вот мой самозагрузки/start.php среда
$env = $app->detectEnvironment(array(
// Dev environments
'dev' => array('dev.xxx.com'),
// Live server catch
'live' => array('live.xxx.com'),
// EU Server catch
'eu.west.1.live' => array('eu-west-1.xxx.com'),
// US server catch
'us.west.1.live' => array('us-west-1.xxx.com'),
// Local test environments
'chris' => array('outrunthewolf-MacBook-Air', 'e7180623aa2e', 'precise64'),
// Local catch
'dev' => array('*')
));
И моя автозагрузка от композитора
"autoload": {
"classmap": [
"app/commands",
"app/database/migrations",
"app/database/seeds",
"app/tests"
],
"psr-4": {
"": "app/controllers/",
"": "app/libraries/",
"Model\\": "app/models/"
}
},
Вы абсолютно уверены, что у вас нет опечатки в имени провайдера и что пространство имен правильное (возможно, даже отсутствие прописной буквы CamelCase-upper letter)? – Quasdunk
Да. Просто дважды проверьте. – outrunthewolf
Хорошо, у вас есть несколько окружений? Убедитесь, что ваш провайдер присутствует во всех них. Я помню странную небольшую ошибку в L4.2, где мои файлы, специфичные для среды, не были правильно объединены с основным файлом (только в отношении вложенных массивов, таких как поставщики), поэтому я копировал * все * провайдеры и фасады в каждый файл, относящийся к среде. Я не знаю, существует ли проблема, но, может быть, вы можете сделать это. – Quasdunk