言語サービス
PhpStorm は、TypeScript、Vue、Astro、Svelte、その他のフレームワーク固有の言語サービスに依存して、自動補完、コード分析、エラーのハイライトを提供します。
メモリ処理を構成する
PhpStorm は言語サービスとのスムーズな統合を提供することに努めていますが、PhpStorm 自体ではなく言語サービスによって引き起こされる out-of-memory エラーが発生する可能性があります。
メモリ処理モード
言語サービスのメモリが不足すると、PhpStorm はまず再起動を試みます。 2 回連続して失敗すると、言語サービスは停止し、PhpStorm はステータスバーの 言語サービス ウィジェットにエラーを表示し、エラーメッセージを含むポップアップを表示します。
out-of-memory エラーを防止したり、シームレスに解決したりして言語サービスの安定した動作を確保するために、次の 2 つのモードでメモリ処理を構成できます。
メモリを自動的に増やす
このモードでは、PhpStorm は out-of-memory エラーが発生すると自動的に 1000MB を追加し、バックグラウンドで言語サービスを再起動します。
PhpStorm は、RAM の最大メモリ制限である 25% に達するまでこのアプローチを確認なしで継続し、達すると言語サービスが停止し、PhpStorm はエラーメッセージのポップアップを表示します。
状況を改善するための可能な手順については、 トラブルシューティング を参照してください。
メモリ制限を設定する
このモードでは、言語サービスが使用できる最大メモリを手動で指定します。 この制限に達するまで、PhpStorm は out-of-memory エラーごとに 1000MB の追加を提案します。
指定された制限に達すると、言語サービスが停止し、PhpStorm はエラーメッセージを含むポップアップを表示します。
状況を改善するための可能な手順については、 トラブルシューティング を参照してください。
TypeScript 言語サービスのメモリ処理を構成する
Ctrl+Alt+S を押して設定を開き、 に移動します。
言語サービスメモリ 領域で、メモリ処理モードを選択します。
言語サービスメモリ 領域で、メモリを増やし、言語サービスをサイレントに再起動するには、 可能な場合にメモリを自動増量する を選択します。
または、 メモリ制限を設定する を選択し、言語サービスで使用する最大メモリを指定します。
指定されたメモリサイズが使用可能な RAM を超える場合、PhpStorm はツールチップに適切な値を提案します。
トラブルシューティング
メモリ不足エラー
out-of-memory エラーは、言語サービスが割り当てられたメモリ制限を超え、ワークロードを処理できなくなった場合に発生します。 これは通常、以下の理由で発生します。
現在作業中のプロジェクトには、多数のファイルと依存関係が含まれています。
IDE 設定で指定された最大メモリ制限は、言語サービスには不十分です。
メモリ割り当てを増やす
Ctrl+Alt+S を押して設定を開き、 に移動します。
言語サービスメモリ 領域で、 メモリ制限を設定する オプションを選択します。
制限値を徐々に増やします。例えば、4GB から 6GB、次に 8GB へ増やします。 改善状況を確認します。
プロジェクトの範囲を制限する
過剰なファイルや依存関係を持つ大規模プロジェクトは、言語サービスにオーバーロードをかける可能性があります。 大規模なコードベースでの負荷を軽減するには、TypeScript チームが提供する パフォーマンスガイド(英語)の推奨事項、特に プロジェクト参照の使用(英語)と tsconfig.json または jsconfig.json の設定(英語)のセクションに従ってください。
アップグレードまたはダウングレード
言語サービスの最新バージョンを使用していることを確認してください。
PhpStorm には、言語サービスのバンドルバージョンが付属しています。 ただし、新しいバージョンの言語サービスには、多くの場合、パフォーマンスの改善が含まれています。 そのため、言語サービスを最新の状態に保つことをお勧めします。
言語サービスの最新バージョンをインストールするには、コマンドラインシェルまたは埋め込みの ターミナル (Alt+F12) を開き、使用している言語サービスとパッケージマネージャーに応じて次のいずれかを入力してください:
npm install --save-dev typescriptまたは
pnpm add --save-dev typescriptまたは
yarn add --dev typescriptnpm install --save-dev @vue/language-serverまたは
pnpm add --save-dev @vue/language-serverまたは
yarn add --dev @vue/language-servernpm install --save-dev svelte-language-server typescript-svelte-pluginまたは
pnpm add --save-dev svelte-language-server typescript-svelte-pluginまたは
yarn add --dev svelte-language-server typescript-svelte-pluginnpm install --save-dev @astrojs/language-serverまたは
pnpm add --save-dev @astrojs/language-serverまたは
yarn add --dev @astrojs/language-server言語サービスの更新後に問題が発生した場合は、問題が更新によって発生したかどうかを確認するために、以前のバージョンにダウングレードすることを検討してください。
TypeScript サービスが起動しない
TypeScript Language Service は、適切な通知が表示されないまま起動しません。 その結果、型推論が利用できず、補完やインポート候補も表示されません。
起動タイムアウトを長くする
Ctrl+Alt+S を押して設定を開き、 に移動します。
JavaScript and TypeScript 領域で、 TypeScript サービス起動時のタイムアウト フィールドの値を増やします。

PhpStorm 課題追跡システムに問題を提出する
問題が解決しない場合は、 PhpStorm 課題トラッカーで課題を送信し、その課題にプロジェクトを添付してください。 これにより、問題をより効率的に再現し、調査することができます。