2015-09-28 2 views
1

У меня проблема с уловкой учебника 22 с поставщиками услуг в Laravel ... Когда я разворачиваю приложение на свой живой сервер, и я запускаю composer обновление произойдет, потому что я добавил поставщика услуг в конфигурацию Laravel, которая еще не установлена. Но мне нужно запустить обновление композитора, чтобы установить его в первую очередь!Установка композитора не будет работать с использованием Laravel, если я не закомментирую поставщика услуг в конфиге

Я работал над проблемой, комментируя мой поставщика услуг в конфигурации/app.php и затем запустить обновления композитор то не-комментируя это снова и приложение работает. Я бы предпочел не делать этого, поскольку я использую Envoyer для моего развертывания, и вся идея Envoyer - это быстрое быстрое развертывание. Кто-нибудь получил правильное решение для этого?

конфигурации/app.php (сниппет) Ошибка

'providers' => [ 

     /* 
     * Laravel Framework Service Providers... 
     */ 
     Illuminate\Foundation\Providers\ArtisanServiceProvider::class, 
     Illuminate\Auth\AuthServiceProvider::class, 
     Illuminate\Broadcasting\BroadcastServiceProvider::class, 
     Illuminate\Bus\BusServiceProvider::class, 
     Illuminate\Cache\CacheServiceProvider::class, 
... 
     /* 
     * Added Service Providers... 
     */ 
     Laracasts\Utilities\JavaScript\JavaScriptServiceProvider::class, 
     Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class 

    ], 

композитор после обновления попытки

[Symfony\Component\Debug\Exception\FatalThrowableError]         
    Fatal error: Class 'Laracasts\Utilities\JavaScript\JavaScriptServiceProvider' not found 

ответ

3

Для установки ваших зависимостей при развертывании, вы не должны работать composer update но composer install , Если вы используете composer update, ваш файл composer.lock будет проигнорирован, и у вас могут быть разные (и потенциально непроверенные) версии зависимостей между вашей машиной dev и вашим окончательным сервером.

Кроме того, чтобы преодолеть ошибку «Не найден», добавьте опцию --no-scripts при первом запуске композитора