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