問題前提:
在Tomcat目錄下的bin目錄中雙擊startup.bat直接打開tomcat時,可能會出現以下兩個問題
- Tomcat的窗口一閃而過
- 啓動報錯
第一個問題:Tomcat的窗口一閃而過
原因:沒有正確配置JAVA_HOME環境變量
在安裝JDK時,需要將JDK的目錄配置到Path變量下,問題就在這裏,因爲配置的時候,有可能是直接將JDK的目錄配置到了Path環境變量
雙擊Path變量,如下圖所示
這樣的做法是錯誤的
正確的做法是什麼?
應該先創建一個JAVA_HOME環境變量
將JAVA_HOME的值設置問JDK的路徑,如下圖
然後再將JAVA_HOME代替JDK安裝路徑給Path變量
將startup.bat關掉,重新啓動即可
可以嘗試分析一下原因:
先以文檔的形式打開startup.bat,發現和catolina.bat有關,
我們就以文檔形式打開bin目錄下的catolina.bat
在文檔裏可以看到,這裏用到了環境變量的JAVA_HOME,所以在配置環境變量的時候,必須用JAVA_HOME來設置JDK路徑,否則這裏就無法找到JDK,由於Tomcat是純java編寫的,它的啓動和運行要依賴與JDK,所以Tomcat就無法正常運行
第二個問題:啓動報錯,然後窗口自動關閉
原因:有可能是已經打開了一個Tomcat(或者有其他程序佔用了Tomcat的端口號),再次啓動的時候由於端口被佔用,所以無法正常啓動
如果是這種情況,通過查看日誌會發現有一個異常:java.net.BindException:Address already in use
解決方法:
找到佔用Tomcat端口號(一般是8080)的程序,關閉該程序
1、打開cmd窗口,輸入 netstat -ano命令
找到Tomcat端口(我的是默認8080),記錄該端口程序的PID
2、打開任務管理器
找到剛記錄的PID對應的程序,把它關掉。
這樣,Tomcat就能正確啓動了