1. 程式人生 > >tomcat啟動一閃而過

tomcat啟動一閃而過

遇到很多次執行startup.bat後,一個視窗一閃而過的問題,但是從來沒去糾正怎樣修改配置才是正確的,現在從網上查閱的資料整理如下:tomcat在啟動時,會讀取環境變數的資訊,需要一個CATALINA_HOME JAVA_HOME的資訊,CATALINA_HOMEtomcat的主目錄,JAVA_HOMEjava安裝的主目錄,jdk的主目錄。首先,要在環境變數處,配置JAVA_HOME,注意變數值是jdk的主目錄,不是bin目錄,並且不要加分號,如圖:

然後,如果這樣配置,startup.bat還是一閃而過,可以右鍵點選startup.bat,編輯,在文字的最後敲上pause,儲存後重新執行

startup.bat,這時候視窗不會再一閃而過,而是停留在桌面上(除錯成功,把pause去掉即可)。

如果有錯誤資訊,這時候會顯示出來,可以再根據它的錯誤提示,上網搜尋對應的解決辦法,下面是在錯誤提示視窗遇到過的問題:一、Neither the JAVA_HOME nor the JRE_HOME environment variable is definedTomcatstartup.bat,它呼叫了catalina.bat,catalina.bat則呼叫了setclasspath.bat,只要在setclasspath.bat的開頭宣告環境變數(紅色兩行)就可以了,原因是後來較新版本安裝完不會自動登記環境變數

JAVA_HOMEJRE_HOMEsetclasspath.bat的開頭新增紅色標記部分,如下:rem ---------------------------------------------------------------------------rem Set CLASSPATH and Java optionsremrem $Id: setclasspath.bat 505241 2007-02-09 10:22:58Z jfclere $rem---------------------------------------------------------------------------
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_20
set JRE_HOME=C:\Program Files\Java\jre6
rem Make sure prerequisite environment variables are setif not "%JAVA_HOME%" == "" goto gotJdkHomeif not "%JRE_HOME%" == "" goto gotJreHomeecho Neither the JAVA_HOME nor the JRE_HOME environment variable isdefinedecho At least one of these environment variable is needed to run thisprogramgoto exit這樣在每次執行startup.bat時就自動註冊了JAVA_HOMEJRE_HOME執行startup.bat,提示資訊:Server startup in xxxxx ms” OK 大功告成。二、Cannotfind ""d:\apache-tomcat-6.0.32"\bin\setclasspath.bat"這個時候,可能是CATALINA_HOME的值在某個地方被寫死了,像我的綠色版tomcatbin檔案下多了一個setenv.bat的檔案,開啟一看果然是在這裡面被寫死了CATALINA_HOME的路徑,這應該是為了某種原因被人後加上的設定檔案,把這個檔案刪除之後,tomcat可以正常運行了。


這種情況,可以去看catalina.bat中的配置,如下圖,可能配置死的內容就在這個檔案裡。