Windows
Eclipse
Tomcat
spring-boot

spring boot初心者にありがちなこと(tomcat編)

More than 1 year has passed since last update.

事象

 eclipseが異常終了したので、再起動してspring bootも立ち上げ直した。
 ところがtomcat起動で以下のエラーが発生し、spring bootを起動できない。

 ローカル・ホスト の Tomcat8 (Java8) で必要な幾つかのポート (8080, 8009) がすでに使用中です。サーバーはすでに別のプロセスで稼働中であるか、システム・プロセスがそのポートを使用中である可能性があります。このサーバーを始動するには、他のプロセスを停止するか、ポート番号を変更する必要があります。

原因

 ポート8080を抱えたtomcatが起動し続けており、ルーティングに失敗する。

対応

 ポートを持っているプロセスを調べて、タスクマネージャから終了させる。

 コマンドプロンプトで以下を実行
 netstat -ano

コマンドについて

 netstatはポートのルーティングを確認できるコマンドで、network statisticsの略。
 -a:全てのTCPコネクションとlistenしているTCPポートおよびUDPを表示。
 -n:TCPコネクションのアドレスやポート番号を数値として表示。
 -o:TCPコネクションに対応するプロセスID(PID)を表示。

プロセスの終了

 タスクマネージャを起動し、同一のプロセスIDを持つタスクを終了する。

備考

 8080ポートを使うアプリケーションがあり、そのアプリが不明な場合、共通の方法でポートを開放できる。
 例:jenkinsはデフォルトで8080ポートを使用する。