我是 JSTL 的新手,我从这里 下载了 jstl-1.2.jar 到我的 web-content/web-inf/lib 文件夹。 在我的 JSP 文件中,我提到:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
但是每次我尝试使用任何 JSTL 标签时,我都会收到错误消息:
HTTP 状态 500 - java.lang.NoClassDefFoundError: javax/servlet/jsp/tagext/TagLibraryValidator
我正在使用 eclipse photon,tomcat server-8.0.52。 我应该怎么办?我在互联网上搜索了很多关于此的内容,但我遇到了同样的错误。请帮助我。
看来你在运行时出错了! 如果你使用 Maven,你必须add JSTL dependency 或者,如果您不使用 Maven 或 Gradle,则必须将 jar 添加到类路径.
哦对不起! TagLibraryValidator 是你的问题! 将 jsp-api-2.2.jar 添加到您的 lib 文件夹中。
最后,我得到了解决方案。我只是重新安装我的 java、eclipse、服务器并重新配置 jstl-1.2.jar。它开始运作良好。我不知道怎么做,但这对我来说只是解决方案。
向 Web 应用程序添加以下依赖项
要将此发行版与您自己的 Web 应用程序一起使用,请添加以下 JAR 文件到应用程序的“/WEB-INF/lib”目录:
如果您不使用 JSTL 1.0 标签,那么“taglibs-standard-jstlel”JAR 可能是 省略。如果不使用 XML 库,则 Apache Xalan 依赖项 也可以省略。
有时只需要 taglibs-standard-impl-1.2.5.jar 库就够了。但是如果你想像 forEach 一样使用循环,你应该将两个库添加到项目的 WEB-INF/lib 中: Impl: taglibs-standard-impl-1.2.5.jar Spec: taglibs-standard-spec-1.2.5.jar
https://downloads.apache.org/tomcat/taglibs/taglibs-standard-1.2.5/README_bin.txt
我有同样的问题。为了解决它,我在apache-tomcat/lib和web-content/web-inf/lib.
中添加了jstl jars