プロジェクトのシナリオ:
Java でSocketを開発しているときに、次のエラーが発生しました: スレッド "main" java.net.BindException での例外: アドレスはすでに使用されています: バインド
問題の説明
エラークラスはBindExceptionで、ヘルプで調べたところポートが占有されていることが分かりました。
プログラムが使用するポートは 12345 ですが、コンピュータ上にこのポートを占有しているアプリケーションはありません。
原因分析:
同じポートのプログラムが既に実行されている可能性があります。再度実行したいのですが、前のプロセスが終了していません。ポート番号は以前実行中のプロセスによって占有されています。使用したい場合は、プログラムを停止してください。前のプロセス。
このプログラムは以前に実行したことがあったので、シャットダウンしてからここで実行すると、エラーが発生しました。
解決:
異常なシャットダウンはポートを中断せず、ポートのプロセスを強制終了するだけです。idea でターミナルを見つけて開きます。または win + R --> cmd でターミナルを開き、次のコマンドを入力します。
1. ポートを占有しているプロセス番号を見つけます。
netstat -aon|findstr 端口号
2.プロセスを強制終了します
taskkill -f -pid 进程号
ここでの占有ポート番号は 12345 です。解決策は次のとおりです。