あじちゃんのブログ。備忘録。

〜SEもOLなんですかね?

削除した/移動したはずのファイルを探して「No such file or directory」でサーバーが起動しない!autoloadファイルが更新されていない時の対処方

git mv *** を頻繁にやっていると、autoloadファイルが更新されずにサーバーが起動できなかったりすることがあるのでメモ


例えばこんな感じでパスを変更したとして

git mv /aaa/bbb/ccc.php /aaa/ddd/ccc.php

このようなエラーが出たとする

$ php artisan serve

In ClassLoader.php line 444:
                                                                                                                                                     
  include(/aaa/bbb/ccc.php): failed to open stream: No such file or directory   

この場合、 [~/vendor/composer/autoload_classmap.php] の設定が正常に書き換わってくれていないので自動で治してやる。

composerのコマンドを使う。以下のどちらでも良い。

  • dump-autoload
  • dumpautoload
$ composer dump-autoload

Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> php artisan package:discover
Discovered Package: barryvdh/laravel-ide-helper
Discovered Package: fideloper/proxy
Discovered Package: intervention/image
Discovered Package: laravel/tinker
Discovered Package: nesbot/carbon
Package manifest generated successfully.

これでもう一度サーバーを起動してやれば直っているはず。