如何查看JSP和Servlet的版本
说明
进行这个教程之前,需要先获得JSP和Servlet的JAR包。
获得JSP和Servlet的JAR包
-
对于不同的场景,上述获得JSP和Servlet的JAR包的方式不同,这里以Tomcat为例。
-
JSP和Servlet的JAR包一般在Tomcat的lib文件夹,即路径 Tomcat的安装路径\lib 。在lib下找到 jsp-api.jar 和 servlet-api.jar 这两个JAR包。这两个JAR包分别是JSP的JAR包和Servlet的JAR包。考虑到兼容性,Tomcat不会在这两个JAR包的文件名称中直接显示版本信息,因此需要将这两个JAR包解压至任意的某个文件夹。
JSP的版本号
将JSP的JAR包解压之后,以文本方式打开解压之后的文件夹的文件夹META-INF中的文件MANIFEST.MF,找到文件MANIFEST.MF中的 Name: javax/servlet/jsp/ 和 Specification-Version: 这两行,其中 Specification-Version: 此行显示的即为JSP的版本号。如笔者的文件MANIFEST.MF显示的JSP版本号为2.3:
...
Name: javax/servlet/jsp/
Implementation-Title: javax.servlet.jsp
Implementation-Vendor: Apache Software Foundation
Implementation-Version: 2.3.FR
Specification-Title: Java API for JavaServer Pages
Specification-Vendor: Sun Microsystems, Inc.
Specification-Version: 2.3
...
Servlet的版本号
将Servlet的JAR包解压之后,以文本方式打开解压之后的文件夹的文件夹META-INF中的文件MANIFEST.MF,找到文件MANIFEST.MF中的 Name: javax/servlet/ 和 Specification-Version: 这两行,其中 Specification-Version: 此行显示的即为Servlet的版本号。如笔者的文件MANIFEST.MF显示的Servlet版本号为4.0:
...
Name: javax/servlet/
Implementation-Title: javax.servlet
Implementation-Vendor: Apache Software Foundation
Implementation-Version: 4.0.FR
Specification-Title: Java API for Servlets
Specification-Vendor: Sun Microsystems, Inc.
Specification-Version: 4.0
...
注意事项&附录
-
一般来说,JSP的版本号不会高于Servlet。不要弄反JSP与Servlet的版本号。
-
在Maven的文件 pom.xml 中,上述版本号(笔者的版本号)对应的元素 <dependency/…> (元素 <dependency/…> 一般位于元素 <dependencies/…> 中)的内容为:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.3</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>4.0</version>
<scope>provided</scope>
</dependency>