LoginSignup
0
0

More than 3 years have passed since last update.

【Laravel】Route/web.phpで構文ミスするとartisanコマンドが動かなくなる問題

Posted at

はじめに

プロジェクトファイルをgitからクローンしてartisanコマンドを入力したら以下のエラーがでた。

PHP Fatal error:  Uncaught Error: Class 'CommonHelper' not found in /home/vagrant/{アプリ名}/app/Logging/CustomJsonFormatter.php:13
Stack trace:
#0 /home/vagrant/{アプリ名}/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php(40): App\Logging\CustomJsonFormatter->format()
#1 /home/vagrant/{アプリ名}/vendor/monolog/monolog/src/Monolog/Logger.php(323): Monolog\Handler\AbstractProcessingHandler->handle()
#2 /home/vagrant/{アプリ名}/vendor/monolog/monolog/src/Monolog/Logger.php(541): Monolog\Logger->addRecord()
#3 /home/vagrant/{アプリ名}/vendor/laravel/framework/src/Illuminate/Log/Logger.php(176): Monolog\Logger->error()
#4 /home/vagrant/{アプリ名}/vendor/laravel/framework/src/Illuminate/Log/Logger.php(87): Illuminate\Log\Logger->writeLog()
#5 /home/vagrant/{アプリ名}/vendor/laravel/framework/src/Illuminate/Log/LogManager.php(547): Illuminate\Log\Logger->error()
#6 /home/vagrant/{アプリ名}/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(121): Illuminate\Log\LogManager->error()
#7 /home/vagrant/{アプリ名}/app/Exceptions/ in /home/vagrant/{アプリ名}/app/Logging/CustomJsonFormatter.php on line 13

解決するためにした事

1,composer dump-autoload

クラスがない系のエラーは大体composer dump-autoloadで直ると思っていたら同じようなエラー内容が表示された。

> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
PHP Fatal error:  Uncaught Error: Class 'CommonHelper' not found in /home/vagrant/{アプリ名}/app/Logging/CustomJsonFormatter.php:13
以下同文

どうやらクラスの読み込みが問題ではなく、そもそもartisanコマンド自体が受け入れられていないようだ。

2,routes/web.phpの構文ミス

あれこれ悩んだ結果、結局routesのファイルで構文ミスをしていただけで、内容は括弧が一行分足りていなかった。
これとCommonHelperのクラスがみつからなくなる因果関係が未だわかっていないが、おそらくLaravelのアーキテクチャに関わるデザインパターンのファイルを間違えるとそもそもクラスの読み込みまで到達してくれないのではないか、その為Stack traceで全く関係のないlog周りの内容が表示されているのだと思います。

おわりに

同様なエラーが発生された方がいましたら、Laravelのアーキテクチャに関わるデザインパターンのファイルを調べてみてください。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0