web-dev-qa-db-ja.com

PORT番号によるWindows Killプロセス

Spring Tool Suite IDEで組み込みのTomcatサーバーを使用しています。私の問題は、プロジェクトを実行すると次のようなエラーが発生することです。

***************************
APPLICATION FAILED TO START
***************************

Description:

The Tomcat connector configured to listen on port 8080 failed to start. The port may already be in use or the connector may be misconfigured.

Action:

Verify the connector's configuration, identify and stop any process that's listening on port 8080, or configure this application to listen on another port.

同様の質問がいくつかありますが、私にとってうまくいかない回答はありません。

10

解決策1:プロセスを強制終了する

管理者としてコマンドラインを実行します

netstat -ano | findstr :<yourPortNumber>
taskkill /PID <typeyourPIDhere> /F

解決策2:ポートを変更する

アプリケーションに設定する新しいポートが他のプロセスをリッスンしないことを確認してください

Change the port 
server.port=8088 # Server HTTP port.

解決策3:別の方法は、(IDEで)プロセスを終了し、プロジェクトをクリーンアップして再ビルドすることです。

enter image description here

enter image description here

UPDATE:

ソリューション2の場合、アプリケーションに設定する新しいポートが他のプロセスをリッスンしないことを確認してください

ポートの状態を確認する方法は?

オプション1

resmon.exeを実行してNetwork -> Listening Portに移動します(タスクマネージャーでも表示できます) enter image description here


オプション2

PowerShell

Get-Process -Id (Get-NetTCPConnection -LocalPort portNumber).OwningProcess

cmd

 C:\> netstat -a -b

(-nを追加して、ホスト名を解決しようとするのを停止します。これにより、処理速度が大幅に向上します。)

-aすべての接続とリスニングポートを表示します。

-b各接続またはリスニングポートの作成に関連する実行可能ファイルを表示します。いくつかのケースでは、既知の実行可能ファイルが複数の独立したコンポーネントをホストし、これらのケースでは、接続またはリスニングポートの作成に関連するコンポーネントのシーケンスが表示されます。この場合、実行可能ファイルの名前は下部の[]にあり、上部はそれが呼び出したコンポーネントで、TCP/IPに到達するまで続きます。このオプションは時間がかかる可能性があり、十分な権限がないと失敗することに注意してください。

-nアドレスとポート番号を数値形式で表示します。

-o各接続に関連付けられている所有プロセスIDを表示します。

16
Patel Romil

PatelRomilの答えがうまくいかないことがわかりました。私はそれを実行してそれを見つけました:

netstat -a -o -n

そして、ポートのPIDを取得して実行します。

taskkill /F /PID [PID]

私のために働いた。置換[PID]は、前のコマンドの表の値に置き換えます。

5
JackU