Tomcat的啟動不一定會非常的順利,這可以有多種原因
一、Tomcat是由Java所編寫的,因此Tomcat的使用需要JDK的支持,如果沒有配置環境變量,Tomcat當然無法啟動,最明顯的特征就是點擊“startup.bat”會出現閃退,因此要在環境變量中設置“JAVA_HOME”的值為JDK的主目錄,然后再在startup.bat和shutdown.bat中的首行加入
SET JAVA_HOME = F:\JDK_Kit
SET CATALINA_HOME = F:\TomCat_8.0.24
其中設置的屬性值根據個人將JDK放置的位置所定,但一定是和環境變量中設置的一致。(這里還有一個CATALINA_HOME,稍后會說到)。對於初次安裝Tomcat,當然還要在cmd中安裝service.bat,這個請看《Tomcat免安裝版的環境變量配置以及Eclipse下的Tomcat配置和測試》中的安裝過程。這里說的Tomcat啟動不起來可能是因為環境變量中誤刪了JAVA_HOME變量或者將JDK文件移動了位置,請注意檢查。
二、由Tomcat的配置文件,Tomcat的端口默認為8080,如果其它軟件占了8080端口,Tomcat啟動會出錯,最簡單的實驗方式就是開啟一個Tomcat服務器后,再開一個Tomcat,這樣后面的Tomcat的服務器就會啟動出錯。
因此有兩種解決方式:
(1).在Tomcat配置文件中將8080端口改為其它端口
(2). 將在8080端口的軟件關閉,以便Tomcat的啟動。
一般在第二種解決方式都會先查詢是哪一個軟件占用了8080端口,然后進入任務管理器對其進行關閉,而有時我們會發現在任務管理器中結束某個進程后,這個程序會自動的又重新啟動,造成殺不死的現象,如果發生這個情況,通常需要進Windows的“服務”中(方式:在cmd中鍵入“services.msc”)找到對應的程序,將其進行停止即可,對於某些程序如果啟動方式是自動,通常都是開機啟動並具有自動重啟功能,非重要的程序經三思后可以考慮設置為手動啟動方式。
三、上面曾經談到設置的環境變量還有一個,那就是“CATALINA_HOME”,這個環境變量是告訴Tomcat的啟動程序 Tomcat程序在哪里。
我的Tomcat放置在F盤目錄下,環境變量中的設置也是其在F盤的目錄,現在我拷貝一份Tomcat在D盤,在兩份Tomcat的【webapps】目錄下都有我自定義的【fjdingsdapp】目錄,所不同的是在D盤下的該目錄中有 “d.html” 文件,而在F盤下的該目錄中有 “1.html” 文件,如下圖所示:
在D盤下
在F盤下
注意:這時從D盤中的Tomcat啟動,我們來訪問d.html文件:
從D盤中啟動的Tomcat服務器,在瀏覽器無法訪問該Tomcat目錄中的web應用程序,如果是訪問1.html呢:
從D盤啟動的Tomcat無法訪問D盤下的Tomcat目錄中的web應用,但是可以訪問F盤下的web應用,說明從D盤點擊的Tomcat啟動程序 啟動的卻是CATALINA_HOME變量所指的Tomcat服務器,因此一定要將相應的web應用放置在CATALINA_HOME所定義的位置!!
PS:
Tomcat也可以不設置CATALINA_HOME環境變量,如果不設置,那么情況就跟上面不同,不設置CATALINA_HOME變量,那么從哪里打開Tomcat啟動程序,就是運行哪里的Tomcat目錄應用,以上面的例子為例,如果不設置CATALINA_HOME,那么從D盤打開的Tomcat服務器后,瀏覽器就可以訪問D盤Tomcat目錄下的d.html而不是F盤中Tomcat目錄下的1.html了。
當然凡是軟件,啟動出錯或者運行出錯的原因會有千百種,今天可能運行正常,明天就出問題了,對這種問題我們可以去Tomcat的日志文件中查詢,在Tomcat的目錄下有這么一個【log】文件夾,里面存放都是Tomcat啟動運行的日志:
這些日志以時間作為文件名,非常便於管理查看。