AI Engineering Tools

プログラミング

エラーメッセージ読解ガイド

エラーログから原因の行、ファイルパス、警告と失敗を見分けるための実践ガイドです。

31

メッセージ構造

最初のエラー行

First error line

TypeError: Cannot read properties of undefined

意味

最初の明確なエラー行が、最も良い開始点となることが多いです。

読み方

最初のうちは、繰り返し発生するフォローアップログを無視し、失敗を示す最初の行を特定します。

TypeError: Cannot read properties of undefined

依頼例

このログの最初のエラー行を見つける。

メッセージ構造

エラー名

Error name

SyntaxError, TypeError, ReferenceError

意味

エラー名によって、問題の広範なカテゴリがわかります。

読み方

構文、実行時、型、ネットワーク、および環境の問題を区別するために使用します。

SyntaxError, TypeError, ReferenceError

依頼例

修正を提案する前に、このエラーをエラー名で分類します。

メッセージ構造

エラーメッセージ

Error message

Module not found: Can't resolve '@/lib/error-message-guide'

意味

このメッセージは、ツールが実行できなかったことを説明します。

読み方

動詞と目的語を読み取ります。モジュールを解決できない、プロパティを読み取れない、またはポートをバインドできないというエラーが発生しました。

Module not found: Can't resolve '@/lib/error-message-guide'

依頼例

このエラーメッセージを、平易な韓国語で書き直し、考えられる原因を指します。

メッセージ構造

スタックトレース

Stack trace

SiteHeader内 (src/components/SiteHeader.tsx:42:15)

意味

エラーにつながった関数呼び出しのリスト。

読み方

プロジェクトファイルを参照している最初の行を見つけ、その部分を調査する。

注意

最上位のスタック行が、必ずしも自分のコードであるとは限りません。いくつかの行はフレームワークの内部処理です。

SiteHeader内 (src/components/SiteHeader.tsx:42:15)

依頼例

このスタックトレースでは、自分のプロジェクトからの最初の行を特定します。

場所の手がかり

ファイルパス

File path

src/components/LanguageSwitcher.tsx

意味

パスは、ツールが関与していると考えるファイルを示します。

読み方

`src`、`app`、`components`、または`lib`ディレクトリ内のパスを優先して、依存関係のフォルダを調査します。

src/components/LanguageSwitcher.tsx

依頼例

このエラーによって言及されているプロジェクトファイルをリストします。

場所の手がかり

行と列

Line and column

src/app/page.tsx:27:12

意味

行と列は、場所を特定の文字領域に絞り込む。

読み方

問題の原因が始まるのは、指定された行よりも前の行である可能性があるため、指定された行とその上の数行を確認してください。

src/app/page.tsx:27:12

依頼例

報告された行の近くのファイルを開き、何が問題に見えるかを説明します。

場所の手がかり

プロジェクトファイル行

Project file line

src/lib/git-github.ts:143:7

意味

依存関係ではなく、ソースコードを指すスタックまたはビルドライン。

読み方

これは、長いフレームワークのトレースを読む前に確認すべき行です。

src/lib/git-github.ts:143:7

依頼例

プロジェクトファイル内の行とフレームワークの行を分離します。

場所の手がかり

node_modules line

node_modules line

node_modules/next/dist/server/app-render.js

意味

インストールされた依存関係またはフレームワークパッケージ内の行。

読み方

ログにもパッケージのバージョンまたは構成の問題が示されていない限り、コンテキストとして扱います。

注意

`node_modules` フォルダは、通常の修正作業では編集しないでください。

node_modules/next/dist/server/app-render.js

依頼例

この node_modules の行が原因であるか、単なるコンテキストであるか教えてください。

JavaScript 実行エラー

SyntaxError

SyntaxError

SyntaxError: Unexpected token '}'

意味

JavaScriptまたはTypeScriptでコードを解析できませんでした。

読み方

報告された行の近くにある括弧、引用符、コンマ、JSX タグ、および不完全な式を確認します。

SyntaxError: Unexpected token '}'

依頼例

この行の周辺にある構文の問題を見つける。

JavaScript 実行エラー

TypeError

TypeError

TypeError: Cannot read properties of undefined

意味

コードが実行時に期待する形状または動作を持たない値。

読み方

値が、未定義、null、オブジェクトではなく文字列、または存在しない関数である可能性があるかどうかを確認します。

TypeError: Cannot read properties of undefined

依頼例

この未定義の値がどこから来ているかを追跡します。

JavaScript 実行エラー

ReferenceError

ReferenceError

ReferenceError: copy is not defined

意味

コードが、そのスコープで使用できない変数または関数名を使用しようとしました。

読み方

インポート、スペル、スコープ、および変数が使用前に宣言されているかどうかを確認します。

ReferenceError: copy is not defined

依頼例

なぜこの名前が定義されていないのかを調べる。

JavaScript 実行エラー

未定義のプロパティを読み取れません

Cannot read properties of undefined

未定義のオブジェクトのプロパティを読み取ろうとしています('navLabel'を読み取り中)。

意味

コードが、未定義の値にあるプロパティにアクセスしようとしました。

読み方

ドットの前のオブジェクト(コピー、ロケール、パラメータ、またはマップルックアップの結果など)を確認します。

未定義のオブジェクトのプロパティを読み取ろうとしています('navLabel'を読み取り中)。

依頼例

このエラーで未定義の値はどれか特定します。

JavaScript 実行エラー

関数ではありません

is not a function

setOpenMenu は関数ではありません

意味

コードが、関数ではない値を引数として呼び出そうとしました。

読み方

プロパティ、インポート、フックの結果、またはオブジェクトメソッドが、期待される名前であるかどうかを確認します。

setOpenMenu は関数ではありません

依頼例

なぜこの値が関数として呼び出されているのかを調べる。

Next.js と Web

Module not found

Module not found

Module not found: Can't resolve '@/lib/error-message-guide'

意味

バンドラーが、インポートで指定されたファイルまたはパッケージを見つけられませんでした。

読み方

ファイルが存在すること、パスのスペルが正確であること、およびエイリアスが期待されるフォルダを指していることを確認します。

Module not found: Can't resolve '@/lib/error-message-guide'

依頼例

インポートパスと実際のファイルパスを確認します。

Next.js と Web

エクスポートが見つかりません

Export not found

Export errorMessageGuideCopy doesn't exist in target module

意味

インポート名が、ターゲットファイルからのエクスポートと一致しません。

読み方

インポートされた名前と、正確にエクスポートされたconst、関数、または型名を比較する。

Export errorMessageGuideCopy doesn't exist in target module

依頼例

不一致のインポートまたはエクスポート名を見つける。

Next.js と Web

Hydration failed

Hydration failed

Hydration failed because the server rendered HTML didn't match the client

意味

サーバーで生成されたHTMLが、Reactがブラウザでレンダリングしたものと一致しませんでした。

読み方

初期レンダリング中に使用される、ブラウザのみの値、日付、ランダムな値、localStorage、およびテーマの状態を確認します。

Hydration failed because the server rendered HTML didn't match the client

依頼例

サーバーとクライアントのレンダリングの不一致の可能性が高い箇所を見つける。

Next.js と Web

404 Not Found

404 Not Found

GET /ko/reference/error-message-guide 404

意味

要求されたルートまたはファイルが見つかりませんでした。

読み方

ルートフォルダ、generateStaticParams、link href、およびエクスポートされた静的出力パスを確認します。

GET /ko/reference/error-message-guide 404

依頼例

このルートが、なぜ404を返すのかを確認します。

Next.js と Web

500 Internal Server Error

500 Internal Server Error

GET /ko 500

意味

サーバーはリクエストを受信しましたが、処理中にエラーが発生しました。

読み方

同じリクエストのターミナルログを確認してください。ブラウザのステータスコードだけでなく。

GET /ko 500

依頼例

このブラウザのエラー500と、それを引き起こしたターミナルエラーを照合します。

TypeScript と lint

型にプロパティが存在しません。

Property does not exist on type

型 'string' にはプロパティ 'navLabel' が存在しません。

意味

TypeScriptは、値の宣言された型にそのプロパティが含まれていないことを示しています。

読み方

値が正しい型であるかどうか、正しくインデックスされているかどうか、およびデータ形状が変更されたかどうかを確認します。

型 'string' にはプロパティ 'navLabel' が存在しません。

依頼例

TypeScriptが、このプロパティが存在しないと考える理由を説明してください。

TypeScript と lint

型の割り当てができません。

Type is not assignable

'string'型の値は、'Locale'型に割り当てできません。

意味

異なる型を期待する場所に値が渡されている。

読み方

実際の値の型と、'to type'という名前の期待される型を比較する。

'string'型の値は、'Locale'型に割り当てできません。

依頼例

このエラーで、実際の型と期待される型を表示します。

TypeScript と lint

ESLint エラー

ESLint error

React Hook useEffect に依存関係がありません。

意味

静的分析ルールによって、安全でない、一貫性のない、またはプロジェクトのスタイルに反するコードが検出された状態。

読み方

ルール名とファイル行を読み取り、コードまたは依存関係リストのどちらを変更する必要があるかを判断します。

React Hook useEffect に依存関係がありません。

依頼例

このLintエラーの説明と、動作を変更せずに修正方法を説明してください。

Next.js と Web

ビルドに失敗しました

Build failed

コンパイルに失敗しました。

意味

ビルドが完了できませんでした。

読み方

サマリーの上部までスクロールし、最初のコンパイル、型、lint、またはルートエラーを見つけます。

コンパイルに失敗しました。

依頼例

このビルドログから、最初の重大なエラーを特定します。

ターミナルとシステム

EADDRINUSE

EADDRINUSE

Error: listen EADDRINUSE: address already in use :::3001

意味

サーバーが、別のプロセスがすでに使用しているポートを使用しようとしました。

読み方

古いサーバーを停止するか、新しいサーバーを別のポートで実行します。

Error: listen EADDRINUSE: address already in use :::3001

依頼例

このポートを使用しているものを特定し、最も安全な次の手順を提案する。

ターミナルとシステム

ENOENT

ENOENT

ENOENT:そのようなファイルまたはディレクトリは存在しません。 'next.config.js' を開けません。

意味

このプロセスは、そのパスに存在しないファイルまたはフォルダを開こうとしました。

読み方

現在の作業ディレクトリ、ファイル名のスペル、拡張子、および生成されたファイルを確認します。

ENOENT:そのようなファイルまたはディレクトリは存在しません。 'next.config.js' を開けません。

依頼例

このファイルが欠けているか、またはコマンドが誤ったフォルダから実行されているかどうかを確認します。

ターミナルとシステム

権限がありません

Permission denied

許可されていない操作

意味

このプロセスは、ターゲットの読み取り、書き込み、または実行の権限を持っていません。

読み方

サンドボックスのルール、ファイル権限、保護されたフォルダ、および承認が必要かどうかを確認します。

注意

ターゲットを理解しない限り、広範囲な権限変更で権限エラーを修正しないでください。

許可されていない操作

依頼例

この権限エラーが発生した理由と、必要な承認について説明してください。

ターミナルとシステム

コマンドが見つかりません

Command not found

zsh: command not found: next

意味

シェルが、その名前の実行可能コマンドを見つけることができません。

読み方

依存関係がインストールされているかどうか、npmスクリプトを使用する必要があるかどうか、およびPATHが設定されているかどうかを確認します。

zsh: command not found: next

依頼例

このコマンドの代わりに、npm スクリプトを実行すべきかどうか教えてください。

デバッグ順序

警告

Warning

DeprecationWarning: module.register() is deprecated

意味

警告は、注意が必要な可能性があることを示しますが、現在のコマンドを停止しない場合があります。

読み方

警告をエラーとして扱う前に、コマンドがまだ正常に完了したかどうかを確認します。

DeprecationWarning: module.register() is deprecated

依頼例

この出力で、ブロックエラーと非ブロック警告を区別します。

デバッグ順序

DeprecationWarning

DeprecationWarning

DeprecationWarning: module.register() is deprecated

意味

現在は機能が動作していますが、後で置き換えまたは削除される予定です。

読み方

ビルドが成功した場合は、自分のコードや必要なアップグレードに関連しない限り、フォローアップとして記録します。

DeprecationWarning: module.register() is deprecated

依頼例

この DeprecationWarning がデプロイメントをブロックするかどうか教えてください。

デバッグ順序

最近の変更

Recent change

エラーは、SiteHeader.tsx の編集後に発生しました。

意味

最も最近の関連する編集は、多くの場合、最も価値のある手がかりとなります。

読み方

エラーの位置と、現在のタスクで変更されたファイルを比較する。

エラーは、SiteHeader.tsx の編集後に発生しました。

依頼例

このエラーと、最も最近変更されたファイルを比較する。

デバッグ順序

手順を繰り返す

Reproduce step

/koを開き、言語メニューをクリックし、次にサイトメニューをクリックします。

意味

エラーが再び発生する最小のアクションシーケンス。

読み方

明確な再現手順により、修正が実際に機能することを確認できます。

/koを開き、言語メニューをクリックし、次にサイトメニューをクリックします。

依頼例

この説明を、正確に再現できる手順に変換します。

デバッグ順序

最小限のログ

Minimal log

エラー行 + ファイルパス + srcからのスタック行

意味

実際の失敗と場所を保持する、短いログ行のセット。

読み方

最初のエラー、プロジェクトファイルパス、コマンド、および最終的な成功または失敗の概要を保持します。

エラー行 + ファイルパス + srcからのスタック行

依頼例

この長いログを、デバッグに必要な最小限の行に圧縮する。