connect を使用して node.js で実行されているシンプルなサーバーがあります。
var server = require('connect').createServer();
//actions...
server.listen(3000);
私のコードには実際のルート ハンドラーがありますが、それが基本的な考え方です。私が繰り返し得るエラーは次のとおりです。
EADDRINUSE, Address already in use
以前にクラッシュまたはエラーが発生した後にアプリケーションを再度実行すると、このエラーが発生します。ターミナルの新しいインスタンスを開かないので、 でプロセスを終了しますctrl + z
。
サーバーまたは接続を閉じるだけで済むと確信しています。電話をかけてみましたが、server.close()
うまくprocess.on('exit', ...);
いきませんでした。
ベストアンサー1
まず、どのプロセスがport 3000
sudo lsof -i :3000
これにより、このポートでリッスンしているすべてのPIDが一覧表示されます。PIDを取得したら、次のようにして終了できます。
kill -9 <PID>
<PID>
ここで、前のコマンド出力をプロセス ID またはプロセス ID のリストに置き換えます。