第一種:
在windows環境下以批處理文件方式啟動tomcat,只要運行<CATALINA_HOME>/bin/startup.bat這個文件,就可以啟動Tomcat。在啟動時,startup.bat會調用catalina.bat文件,而catalina.bat會調用setclasspath.bat文件來獲取JAVA_HOME和JRE_HOME這兩個環境變量的值,因此若要在tomcat啟動時指向特定的JDK,則需在setclasspath.bat文件的開頭處加入以下內容:
rem ---------------------------------------------------------------------------
rem Set CLASSPATH and Java options
rem
rem $Id: setclasspath.bat 730396 2008-12-31 13:49:30Z markt $
rem ---------------------------------------------------------------------------
set JAVA_HOME=C:\Java\jdk1.60
set JRE_HOME=C:\Java\jre1.60
C:\Java\jdk1.60就是JDK的安裝路徑。
同下:
默認情況下,JDK安裝好后,在系統環境變量里設置好JAVA_HOME就可了,但如果系統有多個web服務器,而每個WEB服務器根據需要,要使用不用的JDK版本,那么如下設置就可以解決此類問題。
在tomcat所在目錄下的bin子目錄里面有個setclasspath.bat文件,
打開並找到 if not "%JAVA_HOME%" == "" goto gotJdkHome 字樣。
在該行代碼上面加上set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_18
當然后面的值就是為這個tomcat所指定的特定的JDK安裝目錄。
設置好啟動tomcat即可。
rem表示注釋。
注:需要說明的是部分版本的tomcat5是沒有bat文件的 它的啟動直接是exe,暫時還沒想到方法。
轉載第二種:
1、修改tomcat/bin/catalina.bat,增加 set JAVA_HOME=XXXXXX,其中XXXXXX為jdk 的路徑,如c:\j2sdk1_4
2、修改tomcat/bin/setclasspath.bat,同樣增加 set JAVA_HOME=XXXXXX
一般人常常忘了步驟2,導致的結果就是特定版本的java啟動tomcat,但是jdk用的還是系統默認的(在系統的JAVA_HOME中的設置)。
另外再說一點就是 如果電腦上裝了多個版本的jdk 譬如1.5跟1.6 ,都在path環境變量里配置了。那么在啟動tomcat的時候會怎么樣呢。我做了一個簡單的測試:
1:首先在path里添加兩個版本的jdk 1.5跟1.6
2:然后先用1.5先編譯項目A 編譯后復制部署到tomcat6中 啟動 可以正常訪問
3:再用1.5編譯執行2的步驟,也是可以正常訪問。
推測:電腦中安裝配置多個版本的jdk時,tomcat會根據部署的項目智能選擇需要的版本的jdk.
全文貌似主要針對win系統