如何了解Tomcat小版本差异

这期内容当中小编将会给大家带来有关如何了解Tomcat小版本差异,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

创新互联建站服务项目包括肇庆网站建设、肇庆网站制作、肇庆网页制作以及肇庆网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,肇庆网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到肇庆省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

事情从这儿说起,项目里调试的时候,一个同事遇到了跨域的问题,我记得Tomcat有提供Filter来实现跨域(CORS Filter,之前写过Tomcat与跨域问题),印象里是从Tomcat 7开始,就告诉人家直接部署到Tomcat7里,在应用的web.xml里配置CorsFilter就完事了。

结果没多久人家兴致勃勃的部署完发现不光没成功,而且应用都启动不成功了。

啥,谁在搞事情?

把catalina.jar从服务器上拉下来,果然没有对应的class存在。所以问题很明白,是服务器上使用的版本还没提供CorsFilter,那要升级到哪个版本才能用呢?

最简单的办法是直接下载Tomat 7.x的最新版本。那如果确实想了解下最低一个支持CorsFilter的版本,该怎么办呢?

还有一次,同事在线下服务器测试一个功能,本地功能验证正常,放到线下时功能不符合预期,后来各种debug分析,发现Jasper的一个特性实现在线下服务器还不支持,才发现是本地服务器和线下的小版本差了1个小版本。

所以,这里我们一起看两个问题:

  • 服务器上使用的是什么版本

  • Tomcat在哪个版本提供的这一特性,以及各个小版本间的差异

版本确定

如何确定当前使用的Tomcat版本呢?

在Tomcat的安装目录下有这样一个文件:RELEASE-NOTES

打开看,在License信息的下方,第一屏的中心位置就显示了当前Tomcat的版本

Apache Tomcat Version 7.0.xx  (这里就是版本号)

               Release Notes

除了版本信息,还有一些特性的提供,变更等。

此外,在Tomcat的bin目录下,有一个version的脚本文件,运行下,可以了解当前的CATALINA_HOME,CATALINA_BASE,JRE_HOME, Tomcat版本、JDK版本等信息

当然,还有一种更常见的,甚至不需要登录到服务器,只要你没有对项目的错误页(error-page, 错误页面error-page的原理)做特别的设置,那么在请求一个不存在的资源时,一定会显示下面这样一个错误页面,页面的下方会显示Tomcat的版本号。

如何了解Tomcat小版本差异

版本间差异

确定了自己当前使用的版本,那怎样选择目标版本,或者说想了解某个特性是在具体的哪一版本提供时,就需要了解这个:

一般都称为changelog

每个Tomcat的版本,都会提供一个changelog汇总,可以在Docs的页面下方看到Apache Tomcat Developers这样的一节,是为开发者提供的,第二项就是我们感兴趣的Changelog

如何了解Tomcat小版本差异

changelog页面会包含许多信息,例如

  • bug,可以直接链接到其对应的bug系统里,可以查看详细的一些修订记录

  • 新添加的feature

  • 做了哪些改进,改进说明

而且这些是按照模块来分块罗列的,例如下面这个图

如何了解Tomcat小版本差异

分Coyote和Catalina两个模块,每个带有链接的bugId,可以直接跳转到bug系统,里面饮食详细的bug信息,环境描述,附件等,以及开发者之间的一些处理建议,修订记录。(这种报bug的方式,值得我们在遇到问题寻求帮助时学习,把环境,异常信息提供完整。如何寻求帮助-Tomcat官方建议这样做)

像我们前面提到的CorsFilter,就可以在这里找到,这样就可以确定具体增加该实现的版本了。

如何了解Tomcat小版本差异

同样的,对于某个特性的实现,可以在changelog里找,在你当前版本之后的某个版本做了修订的,可以直接升级到对应版本即可,而且从中,也能了解一些处理的细节。

上述就是小编为大家分享的如何了解Tomcat小版本差异了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。


标题名称:如何了解Tomcat小版本差异
当前网址:http://hbruida.cn/article/jideod.html