您的位置:首页 > 运维架构 > Tomcat

Java笔记(三)--不同版本jdk以及tomcat共存的问题

2008-09-11 12:05 465 查看
最近在做arcgis server,一个问题就是有些东西只能在较早版本的jdk和tomcat上跑,如果版本太新了,就有可能出问题。比如:我装一个arcgis 9.3 server javascript api服务,别人的机器上好好的没问题,我自己按步骤装了,怎么都有问题,就算把别人的整个tomcat拷过来,还是不行。鼓捣几天,都搞不清楚问题在哪里。今天猛然想到:可不可能不是我的问题,而是环境的问题?比如jdk和tomcat版本不对?----因为我用的都是最新本版的jdk 1.6.0_07和tomcat 6.0。于是二话不说,立即装上老版本,过程如下:

1. jdk 1.5.0_01安装。

这个不废话了,关键是我想同时使用jdk 5和jdk6,又不想把我的环境弄得乱糟糟----原来的环境变量是1.6的不想改,仅在需要的时候使用jdk1.5,因此环境变量不动。

2. tomcat 5.5.26

原来的tomcat 6也不想动,于是修改conf/server.xml,把用到的三个端口改一下就可以了---只要不和tomcat6冲突,不和其他软件端口冲突就可以。

3. 由于tomcat 5默认使用的是系统设置的环境变量,里面指定的jdk为jdk1.6,而在这里我想用的是jdk1.5,

于是需要做如下改动:

在tomcat 5的bin目录下的setclasspath.bat文件开始加上如下指定:

set JRE_HOME=C:\jdk1.5.0_09

set JAVA_HOME=C:\jdk1.5.0_09

set JSSE_HOME=C:\jdk1.5.0_09

  这样启动tomcat时,就会使用指定的jdk1.5而不是默认的环境变量里设置的jdk1.6。

至此,jdk1.5+tomcat 与 jdk1.6+tomcat 6就完美的共存了。

另外,我的arcgis 9.3 server javascript api服务使用jdk1.5+tomcat,一下就成功了,原来在jdk1.6+tomcat 6下死活都成不了的,害我浪费了好几天时间,真叫人无语。看来使用这些玩意,还真得注意----但,可恨的是为什么arcgis 9.3 server javascript api在jdk1.6下不能用都不给一个说明?甚至连简单的一句提示都没有,还得靠用户来慢慢琢磨,真受不了。

4. 还有一个问题,就是原来在jdk6中编译好的工程,如果直接拷到使用jdk5的tomcat5中发布的话,就会出错:

Bad version number in .class file

……

解决办法就是在myEclipse中改变编译器,具体方法:

Project->Properties->Java Compiler->Configure Workspace Setting,在弹出的页面中可以进行设置。

当然,以后用jdk1.6的话别忘了再改过来。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: