程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Tomcat啟動剖析(我們為何要設置裝備擺設CATALINA_HOME情況變量)

Tomcat啟動剖析(我們為何要設置裝備擺設CATALINA_HOME情況變量)

編輯:關於JAVA

Tomcat啟動剖析(我們為何要設置裝備擺設CATALINA_HOME情況變量)。本站提示廣大學習愛好者:(Tomcat啟動剖析(我們為何要設置裝備擺設CATALINA_HOME情況變量))文章只能為提供參考,不一定能成為您想要的結果。以下是Tomcat啟動剖析(我們為何要設置裝備擺設CATALINA_HOME情況變量)正文


    用文本編纂對象翻開用於啟動Tomcat的批處置文件startup.bat,細心浏覽。在這個文件中,起首斷定CATALINA_HOME情況變量能否為空,假如為空,就將以後目次設為CATALINA_HOME的值。接著斷定以後目次下能否存在bin\catalina.bat,假如文件不存在,將以後目次的父目次設為CATALINA_HOME的值。依據筆者機械上Tomcat裝置目次的條理構造,最初CATALINA_HOME的值被設為Tomcat的裝置目次。假如情況變量CATALINA_HOME曾經存在,則經由過程這個情況變量挪用bin目次下的“catalina.bat start”敕令。經由過程這段剖析,我們懂得到兩個信息,一是Tomcat啟動時,須要查找CATALINA_HOME這個情況變量,假如在Tomcat的bin目次下挪用startup.bat,Tomcat會主動並准確設置CATALINA_HOME;二是履行startup.bat敕令,現實上履行的是“catalina.bat start”敕令。

假如我們不是在Tomcat的bin目次作為以後目次時挪用startup.bat,就會湧現以下圖所示的毛病信息(在bin目次的父目次下挪用除外)。

 

圖    在其他目次下啟動Tomcat失足

假如要想在隨意率性目次下都能啟動Tomcat,就須要設置CATALINA_HOME情況變量,你可以將CATALINA_HOME添加到Windows XP體系的情況變量中,其值就是Tomcat的裝置目次。在筆者的機械上,Tomcat的裝置目次是D:\apache-tomcat-6.0.36-windows-x86\apache-tomcat-6.0.36。添加CATALINA_HOME情況變量的進程和前述添加JAVA_HOME情況變量的進程是一樣的。假如你不想在體系的情況變量中添加,也能夠直接在startup.bat文件中停止設置。上面是在startup.bat文件中設置CATALINA_HOME後的文件片斷:

rem $Id: startup.bat 908749 2010-02-10 23:26:42Z markt $
rem ---------------------------------------------------------------------------

set CATALINA_HOME=D:\apache-tomcat-6.0.36-windows-x86\apache-tomcat-6.0.36

rem Guess CATALINA_HOME if not defined
set "CURRENT_DIR=%cd%"
if not "%CATALINA_HOME%" == "" goto gotHome
set "CATALINA_HOME=%CURRENT_DIR%"
if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome
cd ..

...

留意以粗體顯示的這句代碼的感化就是設置CATALINA_HOME情況變量,在它的上面是斷定CATALINA_HOME能否為空的語句。假如找禁絕地位,爽性將設置CATALINA_HOME情況變量的這句代碼放到文件的第一行。JAVA_HOME情況變量也能夠采取異樣的方法停止設置。不外,假如要在其他目次下應用shutdown.bat來封閉Tomcat辦事器,則須要在shutdown.bat文件中設置CATALINA_HOME和JAVA_HOME這兩個情況變量,設置變量的地位和startup.bat文件一樣,都是在斷定CATALINA_HOME能否為空之前。固然,為了與日俱增,防止重裝Tomcat後還要停止設置(須要是統一版本的Tomcat裝置在統一地位),我們最好照樣將CATALINA_HOME和JAVA_HOME這兩個情況變量添加到Windows XP體系的情況變量中。

有的讀者能夠會對Tomcat裝置目次的情況變量的名字是CATALINA_HOME而覺得奇異,依照其他情況變量的設置來看,JAVA_HOME表現JDK的裝置目次,那末應當用TOMCAT_HOME來表現Tomcat的裝置目次,可為何要應用CATALINA_HOME呢?現實上,在Tomcat 4之前,用的就是TOMCAT_HOME來表現Tomcat的裝置目次,在Tomcat 4今後,采取了新的Servlet容器Catalina,所以情況變量的名字也改成了CATALINA_HOME。

在Windows體系下情況變量的名字是與年夜小寫有關的,也就是說,JAVA_HOME和java_home是一樣的。

懂得了startup.bat文件今後,我們再來看看真正擔任啟動Tomcat辦事器的catalina.bat文件。經由過程剖析catalina.bat文件,我們發明它還挪用了一個文件setclasspath.bat。在setclasspath.bat文件中,它檢討JAVA_HOME情況變量能否存在,並經由過程JAVA_HOME情況變量,找到java.exe,用於啟動Tomcat。在這個文件中,還設置了其他的一些變量,代表挪用Java的尺度敕令,有興致的讀者可以自行剖析一下這個文件。在履行完setclasspath.bat以後,catalina.bat剩下的部門就開端了Tomcat辦事器的啟動過程。

直接履行catalina.bat時,須要帶上敕令行的參數。讀者可以在敕令提醒符窗口下,履行catalina.bat,就會打印出catalina.bat敕令的各類參數及其寄義,以下圖所示。

(點擊檢查年夜圖)圖     catalina.bat的各參數信息

個中經常使用的參數是start、run和stop。參數start表現在一個零丁的窗口中啟動Tomcat辦事器,參數run表現在以後窗口中啟動Tomcat辦事器;參數stop表現封閉Tomcat辦事器。我們履行startup.bat,現實上履行的就是“catalina.bat start”敕令;履行shutdown.bat,現實上履行的是“catalina.bat stop”敕令。“catalina.bat run”敕令有時刻長短常有效的,特殊是當我們須要檢查Tomcat的失足信息時。

在開辟JSP法式時,常常會碰著本身機械上的8080端標語被其余運用法式占用,或許在設置裝備擺設server.xml時湧現毛病,當經由過程startup.bat(相當於履行“catalina.bat start”)啟動Tomcat辦事器時,假如啟動進程中湧現嚴重毛病,因為是在零丁的窗口中啟動Tomcat辦事器,所以一旦啟動掉敗,敕令提醒符窗口就主動封閉了,法式運轉中輸入的失足信息也隨之消逝,並且沒有任何的日記信息,這就使得我們沒有方法找失足誤緣由。當湧現毛病時,我們可以換成“catalina.bat run”敕令再次啟動,一旦啟動掉敗,僅僅是Tomcat辦事器異常終止,然則在以後的敕令提醒符窗口下依然保存了啟動時的失足信息,如許我們便可以查找啟動掉敗的緣由了。

以上就對Tomcat 啟動剖析做的材料整頓,後續持續彌補相干材料,感謝年夜家對本站的支撐!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved