LoginSignup
0
0

More than 3 years have passed since last update.

【EC-CUBE4】自作プラグイン作成時、コードミスったままプラグイン登録後500エラーになり動かない

Last updated at Posted at 2021-05-13

経緯

テスト的に上げてみようとアップロードしたら、コードにミスがあったらしく。エラーをはく。
その後管理画面にも移れず、コードを変えても変わらず詰んだ。

開発環境

  • MAMP v6.3
  • EC-CUBE4 v4.0.5-p1

作成したPluginファイル

  • composer.json
  • Controller
  • Entity
  • Repository

結論

結論から言うと、
Plugin配下のディレクトリ消して、自分のローカルサイトにアクセスする
と直る。

注意点

コードでPluginを消したため、管理画面には残っています。
管理画面から消そうとしても中身はないため、システムエラーが発生しましたのエラーが吐かれます。

今回私はお試しでプラグイン作成したので、名前を変えてアップロードしました。
名前変えたくない場合は、、作り直ししか私の知見ではわかりません、、


発見過程

ここから下は自分の試したことを置いておきます。

模索①

とりあえずキャッシュに違いない。
管理画面に入れないので、ファイルを消そう。
/var/cache/prod/以下全て

結果
えーん;;変わらず。

模索②

キャッシュに違いないんだ。。。多分。。
コマンドラインからcache消そう

結果
えーん;;
コマンドラインから削除しようとするとエラー、、
namespace大丈夫なはずだぞ、、

Expected to find class "Plugin\samplePlugin001\Controller\PlgSampleController" in file "/Applications/MAMP/htdocs/eccube-  
  4.0.5-p1/app/Plugin/samplePlugin001/Controller/PlgSampleController.php" while importing services from resource "../../../  
  app/Plugin/*", but it was not found! Check the namespace prefix used with the resource in /Applications/MAMP/htdocs/eccub  
  e-4.0.5-p1/app/config/eccube/services.yaml (which is loaded in resource "/Applications/MAMP/htdocs/eccube-4.0.5-p1/app/co  
  nfig/eccube/services.yaml")

模索③:結果としてこれで解決

ん、待てよ。
Plugin配下が悪さしてるんだから、Plugin配下のディレクトリ消してみよう

結果
消した後、自分のローカルサイトにアクセスできた!!!

余談

Pluginのコードちょっとミスってただけで、こんなリスキーなことあるか、、、
他の皆さんはどうやって解決しているんだろうか、、(このエラー起こしてる人ネットで見つけられなかった)

追記 (2021/05/13)

DBから直接エラーを起こしていたファイルを削除することで、
注意点の名前問題は解決しました。

また、.env内が
APP_ENV=dev
APP_DEBUG=1
になっているかも確認が必要でした。

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