我們有一個安裝Tomcat的安裝程序。我怎麼知道它是32位版本的Tomcat還是64位版本?如何找出Tomcat在窗口服務器上是32位還是64位?
回答
正如Pierre所提到的,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位)。
對於Windows,只有一個安裝程序能夠安裝32位和64位版本。
http://tomcat.apache.org/download-60.cgi#6.0.32
你可以嘗試安裝它,並運行./bin/version.[bat|sh]腳本。
看看輸出上的「架構」字段。
在我的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安裝到Program files (x86)
目錄中。但Tomcat 7安裝程序將選擇64位版本的Java,並將其自身安裝到Program Files
文件夾中。
但是,您不能假設Tomcat 7在這種情況下使用的是64位Java,因爲用戶在安裝tomcat 7後可能已經添加了64位Java,而tomcat 7不知道如何從其中更改其「位」發生這種情況時32到64。
到目前爲止,我一直無法找到確定哪個JRE Tomcat正在使用的可靠方法。使用像Program files (x86)
這樣的文件夾名稱並不意味着什麼,因爲用戶可以將此位置更改爲他們喜歡的任何位置。
至於這之前的最後一個答案,在上面,Tomcat 7似乎沒有描述的version.bat
或version.sh
文件,所以AFIK不再是準確的。
有明顯不同的zip文件可用於64和32位窗口可供下載。 http://tomcat.apache.org/download-70.cgi – Edd
很簡單,啓動tomcat,然後轉到任務管理器。如果它是32位的,它會在進程名稱後面顯示* 32。確保你看看tomcatx.exe而不是tomcatxw.exe進程。我認爲在某些版本中,java進程會顯示出來而不是tomcat。
- 1. 如何找到它是32位還是64位? Tomcat
- 2. 無論系統是32位還是64位,int都是32位還是64位?
- 3. 開發/ Web服務器應該在32位或64位窗口服務器上?
- 4. 找出一個DLL是從Java的32位還是64位
- 5. 64位服務器上的32位Fortran
- 6. 無論系統是32位還是64位,uint均爲32位?
- 7. 如何找出安裝的Erlang是32位還是64位版本?
- 8. 查找ipa文件是32位還是64位。 (macos/unix)
- 9. 如何檢測,如果CPU是32位還是64位
- 10. 如何在64位機器上調試32位WCF服務?
- 11. 在Windows和Linux中如何查找安裝的mercurial是32位還是64位?
- 12. 如何確定System.Diagnostics.Process是32位還是64位?
- 13. 如何判斷我寫的程序是32位還是64位?
- 14. 如何檢測Cocoa應用程序是32位還是64位?
- 15. 如何檢查我的Perl安裝是32位還是64位?
- 16. 如何知道libpython27.a是32位還是64位?
- 17. 如何檢查安裝的wxPython是32位還是64位?
- 18. 如何檢查WebSphere是32位還是64位?
- 19. 如何檢查安裝的Anaconda是32位還是64位?
- 20. 如何判斷應用程序是64位還是32位?
- 21. 如何判斷我的cygwin安裝是32位還是64位?
- 22. 檢查處理器是32位還是64位
- 23. 如何確定在Windows上安裝的庫是32位還是64位?
- 24. 如何查找我的Amazon EC2實例是32位還是64位?
- 25. JProfiler GUI在32位機器上連接到64位服務器
- 26. 檢查應用程序是建立在32位還是64位?
- 27. 檢查正在運行的進程是32位還是64位
- 28. 使用C#,如何得到我的機器是64位還是32位?
- 29. 如何檢查Linux文件(.so)是32位還是64位從Windows機器
- 30. 在32位和64位平臺上總是處理32位?
現在無效,有[Tomcat](https://tomcat.apache.org/download-70.cgi)的多個版本。 – rd22