Macだとアクティビティモニタで簡単にプロセスをkillできますが(自分はそうしてた)、Windowsはnetstatしたりサービス一覧を調べたりする方法が出てきて、なんか大変そうだったので。
このスクリプトを実行する
PowerShellでこのスクリプトを実行します。
$processes = Get-Process -Id (Get-NetTCPConnection -LocalPort 8080,8005,8009).OwningProcess foreach($process in $processes) { Stop-Process $process.Id }
実行方法
- Windows PowerShellを立ち上げる
スタートメニュー(Cortana)の検索でpowershell
とか打つと候補に出てくる - 上記のスクリプトをコピペしてEnterで実行
エラーっぽい赤い文字が出るかもしれませんが、8005やか8009番ポートを使用しているアプリケーションが存在していないだけで特に問題ありません。
これは何
8080, 8005, 8009番ポートを使用しているプロセスを一括で終了しています。
「ローカルホストのtomcat vXX サーバーで必要なポート8080はすでに使用中です」 is 何
8080番ポートを使うサーバーを起動したいけど、8080番ポートを使用している先客(プロセス)がすでに実行中なので、起動できない。
(すでに実行中のそれは、大抵はeclipseで自分が起動したプロセスの残骸だったりする)
ポート番号の変更は根本解決ではない
eclipseでtomcatのポート番号を変更する方法もありますが、このエラーは前述の通りプロセスの残骸が原因なので、そのプロセスを終了させるほうが正攻法と思われます。(最終手段のPC再起動も事実上はその残骸プロセスを終了させる方法)