操作系统:MacOS 10.15
开发环境:eclipse 2019-06 (4.12.0)+maven3.5.4+tomcat7.0.90
问题描述
Message:/WEB-INF/views/list.jsp (line: 3, column: 60) Unable to read TLD “META-INF/c.tld” from JAR file
"file:/Users/wujunxuan/Desktop/tools/apache-tomcat-7.0.90/wtpwebapps/ssm-crud/WEB-INF/lib/jstl-1.2.jar": org.apache.jasper.JasperException: Failed to load or instantiate TagLibraryValidator class: org.apache.taglibs.standard.tlv.JstlCoreTLV
Exception:Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: /WEB-INF/views/list.jsp (line: 3, column: 60) Unable to read TLD “META-INF/c.tld” from JAR file “file:/Users/wujunxuan/Deskto
p/tools/apache-tomcat-7.0.90/wtpwebapps/ssm-crud/WEB-INF/lib/jstl-1.2.jar”: org.apache.jasper.JasperException: Failed to load or instantiate TagLibraryValidator
class: org.apache.taglibs.standard.tlv.JstlCoreTLV
出错原因
假如使用Tomcat作为web容器的话,Tomcat会自动为项目添加servlet-api.jar ,jsp-api.jar等jar,将导致Jar冲突(具体为版本或者兼容性问题)。Tomcat自带的JAr具体可以在**/Users/XXXX(用户名)/Desktop/tools/apache-tomcat-7.0.90/lib**查看(个人习惯将工具放桌面)。
解决办法
1.删去项目WEB-INF/lib下的servlet-api.jar ,jsp-api.jar;接着clean tomcat下对应的项目;然后build项目;最后重新运行。
2.假如使用maven,将对应的jar的<dependence>
内添加<scope>provided</scope>
;接着update project;接着clean tomcat下对应的项目;然后build项目;最后重新运行。
3.待补充