日期:2014-05-18  浏览次数:20612 次

一台机器,两个版本的JDK,两个版本的tomcat
因为现在只有一个云服务器,有两个独立的JAVA源码系统,有一个已经上线正常运行了,现在另一个也需要上线正常运行,不知道如何设置
A 系统
C:\Program Files\Java\jdk1.5.0_12
D:\apache-tomcat-6.0.35

A 系统已上线运行正常,使用的都是tomcat里面默认的变量名,系统环境变量里面也是使用的默认的变量名
CLASSPATH = .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
JAVA_HOME = C:\Program Files\Java\jdk1.5.0_12
PATH = %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;******;

需要请教的是B系统
D:\Program Files\Java\jdk1.6.0_24
D:\Soft\Tomcat\Aas\apache-tomcat-6.0.16

我在网上找了好多资料,把相关的系统环境变量替换了
CATALINA_HOME2 = D:\Soft\Tomcat\Cas\apache-tomcat-6.0.16
CLASSPATH = .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;.;%JAVA_HOME2%\lib\dt.jar;%JAVA_HOME2%\lib\tools.jar;
JAVA_HOME2 = D:\Program Files\Java\jdk1.6.0_24
PATH = %JAVA_HOME2%\bin;%JAVA_HOME2%\jre\bin;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;******;

D:\Soft\Tomcat\Cas\apache-tomcat-6.0.16\bin 这个路径下面的
catalina.bat
setclasspath.bat
shutdown.bat
startup.bat
4个文件里面的相关变量名都替换成了%JAVA_HOME2%, %JRE_HOME2%, %CATALINA_HOME2%

现在运行startup.bat就闪退,在cmd里面运行
D:\Soft\Tomcat\Cas\apache-tomcat-6.0.16\bin>startup.bat

D:\Soft\Tomcat\Cas\apache-tomcat-6.0.16\bin>set JAVA_HOME2=D:\Program Files\Java\jdk1.6.0_24

D:\Soft\Tomcat\Cas\apache-tomcat-6.0.16\bin>set JRE_HOME2=D:\Program Files\Java\jre6
Using CATALINA_BASE:   D:\Soft\Tomcat\Cas\apache-tomcat-6.0.16
Using CATALINA_HOME2:   D:\Soft\Tomcat\Cas\apache-tomcat-6.0.16
Using CATALINA_TMPDIR: D:\Soft\Tomcat\Cas\apache-tomcat-6.0.16\temp
Using JRE_HOME2:        D:\Program Files\Java\jre6
D:\Soft\Tomcat\Cas\apache-tomcat-6.0.16\bin>

从这个输出貌似找到是在catalina.bat运行这个文件的时候退出了,但不知道是什么原因?

有没有高手指导一下

谢谢

------解决方案--------------------
%JAVA_HOME2%, %JRE_HOME2%, %CATALINA_HOME2%
Tomcat不认识你发明的这几个环境变量。

试试在catalina.bat中定义%JAVA_HOME%, %JRE_HOME%, %CATALINA_HOME%,然后再运行看看。
这种方式定义的环境变量只会影响当前启动的程序。
------解决方案--------------------
我电脑上也装了两个tomcat、两个版本的jdk,但是项目不影响。你可以根据项目需要,在项目中build path设置jdk的路径,tomcat也是一样,不会相互影响的
------解决方案--------------------
楼主你搞这么复杂干嘛啊,为何不统一用高版本的?瞎扯什么腾啊,高版的都兼容低版的吧。
我自己做的东东,jdk用1.4一直升到了1.7,tomcat也从,5。0一直升到了7,都兼容得好好的,没什么毛病,从理论上来讲,高版的(非测试版),也更好点。
如果实在要扯腾,倒也有办法,你可以修改tomcat里边的一个文件的jre路径(不要用系统环境变量),并且,tomcat也是用绿色版的。想要完整的例子,去下载下面这个安装包:http://url.cn/MR5Xa9,   

安装完,是个统立的服务系统,里边的tomcat与jre可以换成你想要的版本。该安装包生成的版本是jre7与tomcat7。
具体实现细节说来话长,我也不详细说明了(其实也有忘了,要详细说还要去复女下,记忆不好,哎),这个也是我当初费了好长时长做出的东东(据我当初了解,网上没有第二个做得我这么详细的了或更实用的了,半成品倒不少,问题多,都要自己去修正,不然,当初自己也不会花那么多时间去弄了,直接网上下就好了),该系统可以在没装jdk环境变量的电脑中运行。
最后祝楼主好运。

------解决方案--------------------
JDK用一个高版本,tomcat分开部署不可以么?为什么必须要用两个JDK
------解决方案--------------------
高的能兼容低的就对了。
------解决方案--------------------
启动B系统,只需修改Tomcat\bin\setclasspath.bat文件,在@echo off下面添加一行代码,set JAVA_HOME=D:\Program Files\Java\jdk1.6.0_24
------解决方案--------------------
引用:
Quote: 引用:

我电脑上也装了两个tomcat、两个版本的jdk,但是项目不影响。你可以根据项目需要,在项目中build path设置jdk的路径,tomcat也是一样,不会相互影响的


能不能说的具体点啊?

我的jdk安装之后没有配置环境变量,tomcat也是免安装版的,使用的时候,直接在项目上右键,build path ----->Configure build path,然后在Libraries下选择Add Library,然后指定你的JDK安装目录就行了