私はしばしばします
sudo netstat -lpn |grep :8088
出力を表示する
tcp6 0 0 :::8088 :::* LISTEN 11189/java
その後
sudo kill -kill 11189
killatport 8088
変数としてtcpポート番号を使用し、パイプラインのエイリアスとして作成できる、より便利なコマンドが欲しいのですが、出力とパイプからPIDを取得するにはどうすればよいですか?キルコマンドに?私はawkを使用してnetstatからの出力からPIDを取得できると思いますが、入力80が8080と一致しないように、ポートを完全に一致させるにはどうすればよいですか?代わりにCプログラムにする必要がありますか?または、すでにこのような小さなユーティリティがありますか?
1
SIGKILLを使用することは通常悪い考えです。プロセスが自動的にクリーンアップしたくない理由は何ですか?
—
geirha 14
mvn jetty:stop
インスタンスがある場合、サーバーを停止すると失敗する可能性がありますOutOfMemoryError
。Javaサーブレットを再起動すると、などの通常の停止時でもポートが使用できない場合がありますmvn jetty:stop
。時々、プロセスはのOutOfMemoryError
ような通常のシャットダウンでTCPポートを取得でき、解放しませんmvn jetty:stop
。
それでも、
—
geirha 14
mvn jetty:stop
SIGTERMを送信することと同じではありません。また、アプリケーションがメモリ不足であっても、jvmはSIGTERMを処理できるはずです。