操作系統:Fedora14
開發平台:MyEclipse9.1
如果tomcat服務器異常終止,下次啟動時就有可能出現 java.net.BindException: Address already in use (端口號被占用)問題,導致啟動失敗。使用如下命令查看端口號占用情況:
$netstat -pant | grep 8080 #-t參數,顯示進程號
可以看到,很明顯的端口號還在使用中,這是因為tomcat上次的異常終止,導致部分socket沒有關閉,也可能是其他原因,根據個人情況而定。如果等待100s,像上圖所示的處於 CLOSE_WAIT狀態的連接會自動關閉,如果不想等待,執行如下命令,強制終止進程,從上面可以看出,進程號為 7705
也可以使用如下命令查看占用端口號8080的進程號是什么
$fuser -v -n tcp 8080