64位tomcat7在windows下安装服务提示版本不兼容的解决方案

可能很少有人在windows下装tomcat时用ZIP压缩包安装吧,估计都是直接装msi。不过我觉得如果时间比较充裕,还是用ZIP手动安装配置比较好,这样有助于掌控tomcat的行为。

不幸的是这次在64位企业版的win7上用64位windows ZIP压缩包安装tomcat7服务时出现了一个小问题:tomcat7.exe版本不兼容。

64位tomcat7在windows下安装服务提示版本不兼容的解决方案_第1张图片

可是我的系统确实是是64位的,我下载的压缩包也是64位windows版本的:


而且神奇的是之前我直接用bin\startup.bat启动tomcat7时却完全正常,能正确访问到8080端口的tomcat7页面,所以相关的环境变量和jre配置我肯定没错,这让我很迷惑。我初步怀疑是tomcat7自己本身不能兼容64位win7,至少是不兼容64位企业版win7。

上网搜了一大圈,但是毫无头绪。我偶然瞄了一眼我下载的压缩包,终于发现了问题所在:原来我下载的是i64不是x64啊!x64是x86架构的64位,也就是平常说的64位,而i64是什么玩意儿?i64就是64位Itanium(安腾)架构……这种高大上的东西我暂时是接触不到。

最后真相查明了,剩下的事就是返回tomcat官网重新下载咯。但是有一点不容忽视,那就是刚才我直接启动tomcat7服务器是成功了的!这说明什么?这说明tomcat7完全做到了java的目标:一次编译,到处运行!所以我猜测tomcat7那么多针对不同平台的安装包,其核心字节码可能几乎都是同一份!这让我想起来一句话,具体记不清了,它的大概意思是说对于一个软件产品,一类程序员会竭力为不同平台编写优化的版本,而另一类程序员则是为不同平台编写一个一致的版本。

再次来到官网下载页面,找到下载的地方的时候我就笑了:

64位tomcat7在windows下安装服务提示版本不兼容的解决方案_第2张图片

这俩放这么近,是故意让人犯错啊!我估计当时下错不是手抖了一下就是眼皮跳了一下……


你可能感兴趣的:(java,tomcat,win7,X64,安腾)