tomcat7-maven-plugin 版本『低』的问题
相较于当前最新版的 tomcat 10 而言,tomcat7-maven-plugin 确实看起来很显老旧。但是,这个问题并不是问题,至少不是大问题。
-
原因 1:tomcat7-maven-plugin 仅用于我们(程序员)开发环境中,最终项目交付以后的运行环境,是 tomcat7 还是更高版本的 tomcat,甚至是其它的 Servlet 容器,这就是另一个问题了,这和 tomcat7-maven-plugin 的版本无关。
-
原因 2:tomcat7 支持 Servlet 3.0,tomcat8 支持 Servlet 3.1,实际上 Servlet 3.0 和 3.1 的区别并不大,甚至说,从 Servlet 3.0 开始,tomcat 的新特性在绝大多数的项目中都用不上,所以,tomcat8-maven-plugin 的高级也没高到哪里去。
这里涉及到一个小知识,从 3.1 开始,Servlet 开始内置了文件上传功能。但是,经测试实际上,3.0 就已经有了这个功能。另外,Servlet 内置的上传功能,在上传文件名是中文的文件是有中文乱码问题,不是很好解决。所以,实际上上传文件的方案,还是 commons-fileupload 更常见,Servlet 3.0 开始出现的内置的上传方案并没有那么美好。
- 原因 3:tomcat7-maven-plugin 是 tomcat-maven-plugin 的子项目,tomcat-maven-plugin 的最高版本是 2.2 ,版本新特性就是支持 tomcat7 。也就是说 tomcat8-maven-plugin 并非官方项目,这也是为什么,中央仓库没中 tomcat8-maven-plugin 的原因。