本文約定tomcatA使用a版本jdk的安裝路徑c:\a ,jre的安裝路徑爲:c:\jreA,tomcat的路徑d:\tomcatA;
tomcatB 使用b版本jdk的安裝路徑c:\b ,jre的安裝路徑爲:c:\jreB,tomcat的路徑 d:\tomcatB;
其他程序使用c版本的jdk的安裝路徑c:\c。
解決過程如下:
1,系統環境變量中JAVA_HOME=c:/c;CLASSPATH和PATH中使用%JAVA_HOME%;()
2,系統環境變量中JAVA_HOME_1=c:/a;CLASSPATH和PATH中使用%JAVA_HOME_1%;
3,tomcatA的設置:修改tomcatA的service.bat文件與setclasspath.bat中將所有JAVA_HOME都替換成JAVA_HOME_1,JRE_HOME替換爲JRE_HOME_1,並將其路徑設置爲jre的安裝路徑,將所有 CATALINA_HOME都替換成CATALINA_HOME_1;將所有 CATALINA_BASE都替換成CATALINA_BASE_1;
找到set CURRENT_DIR=%這行,在它下面加入
set JAVA_HOME_1=C:\a
set CATALINA_HOME_1=d:\tomcatA
set CATALINA_BASE_1=d:\tomcatA
set JRE_HOME_1=c:\jreA
然後執行service.bat就可以了。啓動測試一下,如果訪問通過。就說明tomcatA沒有問題了,
再來修改
4,系統環境變量中JAVA_HOME_2=c:/b;CLASSPATH和PATH中使用%JAVA_HOME_2%;
修改tomcatB的service.bat文件與setclasspath.bat中將所有JAVA_HOME都替換成JAVA_HOME_2,JRE_HOME替換爲JRE_HOME_2,並將其路徑設置爲jre的安裝路徑;將所有 CATALINA_HOME都替換成CATALINA_HOME_2;將所有 CATALINA_BASE都替換成CATALINA_BASE_2;
找到set CURRENT_DIR=%這行,在它下面加入
set JAVA_HOME_2=C:\b
set CATALINA_HOME_2=d:\tomcatB
set CATALINA_BASE_2=d:\tomcatB
set JRE_HOME_2=c:\jreB
找到下面這兩句
set SERVICE_NAME= //實際名稱
set PR_DISPLAYNAME= //顯示名稱
可以修改下兩個名字,是tomcatA和tomcatB不至於重名,並且能從服務名上明顯分辨出對應的應用來。
然後執行service.bat就可以了。啓動測試一下,如果訪問通過。就說明tomcatB沒有問題了,
至此,問題就解決了,可能中間的過程有多餘的,大家在使用中去發現吧。