現象描述
Tomcat 啟動控制台輸出錯誤信息,但應用實際可正常訪問、功能無異常。截圖顯示 JVM/OS 架構不一致警告。

原因分析
JDK 與 Tomcat 位數不匹配。常見場景:
- 安裝 64 位 JDK,卻下載了 32 位 Tomcat(或反之)。
- 系統環境變量 `JAVA_HOME` 指向的 JDK 與 Tomcat 要求的架構不同。
- Eclipse/MyEclipse 內置 Tomcat 版本與配置的 JRE 不一致。
錯誤信息通常為 `Unsupported major.minor version` 或 `Can't load IA 32-bit .dll on a AMD 64-bit platform`,但若僅載入部分本地庫失敗(如 `tcnative-1.dll`),核心 Servlet 容器仍能啟動,表現為「報錯但能跑」。
解決方案
- 統一架構:確保 JDK、Tomcat、操作系統同為 64 位(現代開發標配)。
- 檢查 JAVA_HOME:`echo %JAVA_HOME%` 指向正確 JDK 目錄。
- IDE 配置:Eclipse → Window → Preferences → Server → Runtime Environments,編輯 Tomcat,指定正確 JRE。
- 替換 tcnative:若需 APR 優化,下載對應版本 `tcnative-1.dll` 放入 `bin` 目錄。
驗證方法
啟動 Tomcat 後訪問 `https://localhost:8080`,若出現貓頁面且無錯誤日誌持續輸出,即屬假性錯誤,按上述修正即可消除。