Apache Tomcat版本
的Apache Tomcat ®是一個開源軟件實現了Java Servlet和JavaServer Pages技術。不同版本的Servlet和JSP規范可使用不同版本的Apache Tomcat。規范與相應的Apache Tomcat版本之間的映射 為:
| Servlet規格 | JSP規范 | EL規格 | WebSocket規范 | 日本規格 | Apache Tomcat版本 | 最新發行版本 | 支持的Java版本 |
|---|---|---|---|---|---|---|---|
| 4.0 | 2.3 | 3.0 | 1.1 | 1.1 | 9.0.x | 9.0.30 | 8及更高版本 |
| 3.1 | 2.3 | 3.0 | 1.1 | 1.1 | 8.5.x | 8.5.50 | 7及更高版本 |
| 3.1 | 2.3 | 3.0 | 1.1 | 不適用 | 8.0.x(已取代) | 8.0.53(已取代) | 7及更高版本 |
| 3.0 | 2.2 | 2.2 | 1.1 | 不適用 | 7.0.x | 7.0.99 | 6及更高版本 (WebSocket為7及更高版本) |
| 2.5 | 2.1 | 2.1 | 不適用 | 不適用 | 6.0.x(已歸檔) | 6.0.53(已歸檔) | 5及更高版本 |
| 2.4 | 2.0 | 不適用 | 不適用 | 不適用 | 5.5.x(已存檔) | 5.5.36(存檔) | 1.4及更高版本 |
| 2.3 | 1.2 | 不適用 | 不適用 | 不適用 | 4.1.x(已歸檔) | 4.1.40(已歸檔) | 1.3及更高版本 |
| 2.2 | 1.1 | 不適用 | 不適用 | 不適用 | 3.3.x(已存檔) | 3.3.2(已存檔) | 1.1及更高版本 |
滿足上表最后一欄要求的任何穩定Java版本均支持每個版本的Tomcat。
Tomcat還應在滿足上表最后一欄要求的任何Java搶先訪問版本上工作。例如,在第一個穩定的Java 8發行版發布幾個月之前,用戶就已經在Java 8上成功運行了Tomcat 8。但是,早期訪問版本的用戶應注意以下幾點:
- 最初的早期訪問版本包含可能會導致在Tomcat上運行的Web應用程序出現問題的錯誤的情況並不少見。
- 如果新的Java版本引入了新的語言功能,則默認的JSP編譯器可能不會立即支持它們。將JSP編譯器切換到javac可以使這些新語言功能可以在JSP中使用。
- 如果您確實使用Java搶先體驗版本發現問題,請 尋求幫助。Tomcat用戶的郵件列表可能是最好的起點。
下面將詳細介紹這些版本,以幫助您確定哪個版本適合您。有關每個發行版的更多詳細信息,請參見相關的發行說明。
請注意,盡管我們提供舊版本的下載和文檔,例如Apache Tomcat 7.x,但我們強烈建議用戶盡可能使用最新的穩定版Apache Tomcat。我們認識到跨主要版本升級可能不是一件容易的事,並且郵件列表中仍為舊版本的用戶提供了一些支持。但是,由於社區驅動的支持方法,您的版本越舊,感興趣或能夠支持您的人就越少。
Alpha / Beta /穩定
在對發布進行投票時,審閱者會指定他們認為已達到發布的穩定性級別。新主要版本的初始發行通常會在幾個月內從Alpha到Beta到Stable進行處理。但是,只有在最終確定了發布實現的Java規范后,才能使用穩定級別。這意味着在所有其他方面都被認為是穩定的發行版,如果規格不是最終的,則仍可以標記為Beta。
下載頁面將始終顯示最新的穩定版本以及存在的任何較新的Alpha或Beta版本。Alpha和Beta版本始終在下載頁面上明確標記。
穩定性是一個主觀判斷,您應始終仔細閱讀要使用的任何版本的發行說明。如果您是版本的早期采用者,我們很樂意在投票中聽到您對它的穩定性的看法:它在開發郵件列表中。
Alpha版本可能包含規范中要求的大量未經測試/缺少的功能和/或重大錯誤,並且預計不會在任何時間段內穩定運行。
Beta版本可能包含一些未經測試的功能和/或許多相對較小的錯誤。Beta版本預計不會穩定運行。
穩定版本可能包含少量相對較小的錯誤。穩定的版本旨在用於生產用途,並有望在更長的時間內穩定運行。
Apache Tomcat 9.x
Apache Tomcat 9.x是當前的開發重點。它建立在Tomcat 8.0.x和8.5.x之上,並實現了Servlet 4.0,JSP 2.3,EL 3.0,WebSocket 1.1 和JASPIC 1.1規范(Java EE 8平台要求的版本)。除此之外,它還包括以下重要改進:
- 添加對HTTP / 2的支持(需要在Java 9上運行(自Apache Tomcat 9.0.0.M18起)或正在安裝的Tomcat本機庫)
- 添加了對將OpenSSL用於JSSE連接器(NIO和NIO2)的TLS支持的支持
- 增加了對TLS虛擬主機(SNI)的支持
Apache Tomcat 8.x
Apache Tomcat 8.0.x建立在Tomcat 7.0.x之上,並實現了 Servlet 3.1,JSP 2.3,EL 3.0 和WebSocket 1.1規范。除此之外,它還包括以下重要改進:
- 一個單一的公共資源實現,以替換早期版本中提供的多個資源擴展功能。
Apache Tomcat 8.5.x支持與Apache Tomcat 8.0.x相同的Servlet,JSP,EL和WebSocket規范版本。除此之外,它還實現了JASPIC 1.1規范。
它是2016年3月從Tomcat 9.0.0.M4(alpha)里程碑發行版派生而來的。它提供Tomcat 9.x代碼庫的HTTP / 2支持和其他功能,同時與Tomcat 8.0運行時和規范要求兼容。(當時無法創建穩定的Tomcat 9.0版本,因為僅在幾年后才確定了Tomcat 9定位的Java EE規范)。
Tomcat 8.5被認為是Tomcat 8.0的替代品。請參閱 遷移指南,以獲取有關遷移到Tomcat 8.5的指導。
Apache Tomcat 8.5.x包括以下重要改進:
- 添加對HTTP / 2的支持(需要Tomcat本機庫)
- 添加了對將OpenSSL用於JSSE連接器(NIO和NIO2)的TLS支持的支持
- 增加了對TLS虛擬主機(SNI)的支持
Apache Tomcat 8.5.x中刪除了以下技術:
- HTTP和AJP連接器的BIO實現
- 支持Comet API
引擎蓋下許多區域發生了重大變化,從而提高了性能,穩定性和總擁有成本。有關詳細信息,請參考Apache Tomcat 8.5更改日志。
Tomcat 8.0的用戶應該意識到Tomcat 8.0現在已經 壽終正寢了。Tomcat 8.0.x的用戶應升級到Tomcat 8.5.x或更高版本。
Apache官方對各版本的解釋:http://tomcat.apache.org/whichversion.html
