StackOverflowError
プラグインやMODでの無限再帰について、どのように見えるか、最も多い原因、そしてその後にサーバーがクラッシュする理由を説明します。
更新日 2026年8月13日
java.lang.StackOverflowError
at com.example.plugin.Handler.process(Handler.java:88)
at com.example.plugin.Handler.process(Handler.java:92)
at com.example.plugin.Handler.process(Handler.java:88)
...
スタック内で同一の行が繰り返される場合、それは無限再帰の兆候です。コードがスタックを使い果たすまで自分自身を呼び出し続けています。
よくある原因
| 状況 | 例 |
|---|---|
| 互いのイベントをトリガーするプラグイン | プラグインAがイベントを捕捉し、同じイベントを発火させるアクションを呼び出す |
| 自身の出力を処理するチャットプラグイン | メッセージ → フィルター → メッセージ |
| スクリプト — Skript | イベントが、そのイベントを呼び出すコマンドを呼び出す |
| カスタムレシピとアイテム | クラフトがクラフトを生成する |
対処方法
- スタックの最上位のクラスを見つけます。それが原因です。
- プラグインのペアである場合は、一方を削除してテストします。
- スクリプトではループを探します。どこを見ればよいか分かれば、通常はすぐに明らかになります。
エラー発生後
エラーが発生したスレッドは終了します。それがメインスレッドであれば、サーバーはクラッシュまたはフリーズします。再起動は必須です。StackOverflowの発生後はそのまま稼働を続けることはできません — サーバーがクラッシュしました。
Minecraftホスティングオフラインでもサーバーが稼働サーバーを作成
