2013-12-22 3 views
3

Я создал новую ветку с использованием Git, применил некоторые обновления к моему коду, проверил эту ветку на моем промежуточном сервере, и теперь я не могу запустить что-либо связанное с композитором.Laravel 4 Класс не найден в bootstrap/compiled.php

Я добавил некоторые новые пакеты в composer.json, которые работают в моей среде разработки, но как только я попробую composer update в промежуточной среде, я получаю класс не найденных ошибок, относящихся к классам, которые он еще не загрузил.

Я попытался

composer update 
composer dump-autoload 
php artisan clear-compiled 
php artisan dump-autoload 
php artisan optimize 

Но результат в следующей ошибке

PHP Fatal error: Class 'Artdarek\OAuth\OAuthServiceProvider' not found in 
/var/www/sites/x/bootstrap/compiled.php on line 4321 

Script php artisan clear-compiled handling the 
pre-update-cmd event returned with an error 

[RuntimeException] 
Error Output: PHP Fatal error: Class 'Artdarek\OAuth\OAuthServiceProvider' 
    not found in /var/www/sites/x/bootstrap/compiled.php 
    on line 4321 

Что еще я могу попробовать, чтобы получить композитор, чтобы загрузить новые файлы?

+0

Вы пытались использовать 'comper install' вместо' composer update'? –

+0

У меня действительно есть. Та же проблема –

ответ

10
php artisan optimize --force 

Эта команда будет повторно генерировать /bootstrap/compiled.php

--force агд необходимо повторно создать файл, когда среда находится в режиме отладки.

0

Я уверен, что есть более элегантный способ справиться с этим (и, пожалуйста, примите любой ответ, который предусматривает, что над этим), но это, вероятно, можно решить, удалив всю директорию поставщика и запущенный композитор.

Я знаю, что это не очень красиво, но иногда это проще и быстрее.

0

У меня была такая же проблема, которую я решил, загрузив проект снова через filezilla на свой сервер.

Это не решает проблемы, возникающие у вас с композитором. Что вызывает вопрос: Предполагая, что вы работаете на выделенном сервере, у вас есть композитор, установленный глобально на вашем сервере? Если нет, вы все равно сможете сделать обновление php composer.phar или just create an alias.

Возможно, я неправильно понял ваш вопрос, и я понимаю, что ваш вопрос был задан некоторое время назад, но, надеюсь, это будет полезно для кого-то другого.

Смежные вопросы