我们有一个安装Tomcat的安装程序。我怎么知道它是32位版本的Tomcat还是64位版本?
答案 0 :(得分:10)
正如皮埃尔所提到的那样,只有一个安装程序来自apache.org,可以在Tomcat官方网站上同时使用32位和64位。这是因为Tomcat本身是一个java应用程序,它与平台无关(Java VM是32位或64位)。在任何情况下,如果您在32位或64位版本中安装了Java并不重要,但是根据您安装的Java版本,它将安装32位或64位的Windows服务包装。
在32位系统中,您只能安装32位Java版本。在64位系统上,您可以安装Java 32位版本或Java 64位版本。如果安装了64位版本,Tomcat的默认安装目录将作为64位应用程序安装。这意味着安装程序将使用“Program Files”文件夹作为默认安装目录,并且Windows注册表中的Tomcat服务条目将放在“HKEY_LOCAL_MACHINE \ SOFTWARE \ Apache Software Foundation”中。但是,如果使用32位版本的Java,Tomcat将作为32位应用程序安装。安装程序的默认安装目录将位于“Program Files(x86)”中,Windows注册表中服务的条目将放在“HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432 \ Apache Software Foundation”中。这是64位Windows系统中32位应用程序的默认设置。
与Windows服务包装器一起,还有另一个组件,它对于32位和64位版本的Tomcat是不同的。它是APR/native library for Windows但安装程序中不包含此内容。在Tomcat网站中,您还可以找到包含它的其他Tomcat distributions,这些发行版依赖于您使用的JVM版本(32或64位)。
答案 1 :(得分:4)
对于Windows,只有一个安装程序能够同时安装32位和64位版本。
http://tomcat.apache.org/download-60.cgi#6.0.32
您可以尝试安装它,然后运行./bin/version.[bat|sh]脚本。
查看输出中的“架构”字段。
答案 2 :(得分:3)
在我的Windows 7 64位机器上:如果java是32位,默认情况下Tomcat 7会安装到Program files (x86)
目录。但注册表键放在两个地方:
HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation
和
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation
这意味着上面的帖子是错误的,至少在Windows 7 64位上。
Tomcat 7没有任何意义,真的:它是一个Java应用程序。它的位数取决于安装Java的位数。
可以安装64位和32位版本的Java。如果Tomcat 7安装程序发现(仅)安装了Java 7 32位,那么它会将tomcat 7安装到{{1 }} 目录。但Tomcat 7安装程序将选择64位版本的Java,并将其自身安装到Program files (x86)
文件夹中。
但是你不能假设Tomcat 7在这种情况下使用64位Java,因为用户在安装tomcat 7之后可能已经添加了64位Java,并且tomcat 7不知道从32改变它的'bitness'发生这种情况时到64岁。
到目前为止,我一直无法找到确定Tomcat正在使用哪种JRE的可靠方法。使用像Program Files
这样的文件夹名称并不意味着什么,因为用户可以将此位置更改为他们喜欢的任何位置。
至于上面的答案之前的最后一个答案,Tomcat 7似乎没有描述的Program files (x86)
或version.bat
文件,因此AFIK也不再准确。
答案 3 :(得分:3)
轻松,启动tomcat,然后转到任务管理器。如果它是32位,它将在进程名称后面显示* 32。请确保您查看tomcatx.exe而不是tomcatxw.exe进程。我认为在某些版本中,java进程将显示而不是tomcat。