Переходы Laravel: класс «не найден»

Я развертываю проект barebone Laravel для Microsoft Azure, но всякий раз, когда я пытаюсь выполнить php artisan migrate я получаю ошибку:

[2015-06-13 14:34:05] production.ERROR: исключение 'Symfony \ Component \ Debug \ Exception \ FatalErrorException' с сообщением 'Class' 'not found' в D: \ home \ site \ vendor \ laravel \ framework \ SRC \ Осветите \ Database \ Миграции \ Migrator.php: 328

Трассировки стека:

  #0 {main} 

В чем может быть проблема? большое спасибо

— редактировать —

Класс миграции

 <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateUsersTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('users', function(Blueprint $table) { $table->bigIncrements('id'); $table->string('name', 50); $table->string('surname', 50); $table->bigInteger('telephone'); $table->string('email', 50)->unique(); $table->string('username', 50)->unique(); $table->string('password', 50); $table->boolean('active')->default(FALSE); $table->string('email_confirmation_code', 6); $table->enum('notify', ['y', 'n'])->default('y'); $table->rememberToken(); $table->timestamps(); $table->index('username'); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::drop('users'); } } по <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateUsersTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('users', function(Blueprint $table) { $table->bigIncrements('id'); $table->string('name', 50); $table->string('surname', 50); $table->bigInteger('telephone'); $table->string('email', 50)->unique(); $table->string('username', 50)->unique(); $table->string('password', 50); $table->boolean('active')->default(FALSE); $table->string('email_confirmation_code', 6); $table->enum('notify', ['y', 'n'])->default('y'); $table->rememberToken(); $table->timestamps(); $table->index('username'); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::drop('users'); } } 

Solutions Collecting From Web of "Переходы Laravel: класс «не найден»"

Для пользователей автозагрузчика PSR-4 (composer.json):

Храните папку миграции внутри массива classmap и не включайте ее внутри объекта psr-4 под автозагрузкой. Поскольку миграция основного класса Migrator не поддерживает пространство имен. Например;

 "autoload": { "classmap": [ "app/database/migrations" ], "psr-4": { "Acme\\controllers\\": "app/controllers" } } 

Затем выполните:

 php artisan clear-compiled composer dump-autoload php artisan optimize 
  • Первый очищает все скомпилированные файлы.
  • Второй обновляет autoload_psr4.php и почти опустошает autoload_classmap.php .
  • Третья версия обновляет autoload_classmap.php .

С этого момента вам больше не придется это делать, и любые новые миграции будут работать правильно.

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

 composer dump-autoload 

затем повторная выдача команды migrate. Подробнее см. На официальном сайте (#Running Migrations): http://laravel.com/docs/master/migrations#running-migrations

У меня была такая же проблема некоторое время назад. По-видимому, это распространенная проблема, потому что в документации для Laravel она даже предлагает: http://laravel.com/docs/master/migrations#running-migrations

В основном все, что вам нужно сделать, это обновить некоторые файлы композитора. Просто запустите:

composer dump-autoload

Это обновит файлы автозагрузки композитора, а затем вы сможете запустить обычную миграцию, и это должно сработать! Самый лучший.

Я также запускаю ту же проблему.

Решением для меня было удаление файла миграции и удаление записи из таблицы «миграции» в базе данных.

После этого я побежал

компоновщик-автозагрузка

и, наконец, смог выполнить сброс / откаты миграции.

Я удалил один из файлов миграции. столкнулись с одной и той же проблемой, в то время как php artisan migrate:rollback

Затем я попробовал composer dump-autoload . Снова то же самое.

Я восстановил удаленный файл и попробовал composer dump-autoload и php artisan migrate:rollback . Оно работает.

У меня была аналогичная ситуация (ошибка класса не найдена) после переноса проекта Laravel 5.2 dev на производство. Производственный сервер искал класс «проект», но имя контроллера было Project.php. Как только я переименовал файл в project.php, было хорошо идти.

При попытке переноса моего проекта я получал тот же класс, который не найден. Иногда вы получаете простые вещи. В моем случае я заметил, что мое имя класса было неверным в моем файле миграции из-за того, что я вносил изменения переименования на раннем этапе и не выполнял эти изменения повсюду.

После исправления имени класса я выполнил композицию dump-autoload, и моя проблема исчезла.

HTH кто-то:]