• #Windows
  • #Node.js
  • #Claude Code
  • #開発環境
未分類

Node.jsプロセス終了時の注意事項

問題の概要

開発サーバーでエラーが発生した際、以下のコマンドでサーバーを再起動しようとすると、Claude Code自体も終了してしまう問題が発生しました。

問題のあるコマンド

Stop-Process -Name node -Force -ErrorAction SilentlyContinue

なぜ問題なのか

  • このコマンドは「node」という名前のすべてのプロセスを終了させる
  • Claude Code自体もNode.jsで動作しているため、一緒に終了する
  • 結果として作業が中断され、再度Claude Codeを起動する必要がある

正しい対処方法

開発サーバー(例: localhost:3000)を再起動したい場合は、ポート番号を指定して該当プロセスのみを終了させること。

推奨コマンド

# ポート3000を使用しているプロセスのみを終了
$pid = (Get-NetTCPConnection -LocalPort 3000 -ErrorAction SilentlyContinue).OwningProcess | Select-Object -Unique
if ($pid) { Stop-Process -Id $pid -Force }

ポート番号が異なる場合

# 例: ポート5173(Vite)の場合
$pid = (Get-NetTCPConnection -LocalPort 5173 -ErrorAction SilentlyContinue).OwningProcess | Select-Object -Unique
if ($pid) { Stop-Process -Id $pid -Force }

ルール

  1. 絶対に Stop-Process -Name node を使用しないこと
  2. 開発サーバーの再起動は必ずポート指定で行うこと
  3. どのポートで動いているか不明な場合は、先に確認してから終了すること
# 現在使用中のポートとプロセスを確認
Get-NetTCPConnection -State Listen | Where-Object { $_.LocalPort -lt 10000 } | Select-Object LocalPort, OwningProcess