java.lang.NoClassDefFoundError:org / apache / taglibs / standard / tag / rt / core / ImportTag

时间:2014-12-01 20:20:57

标签: java eclipse tomcat jar jstl

我正在尝试从jstl了解taglibs,所以我决定为它下载源代码。 我的测试应用程序正在使用以下jar:

javax.servlet.jsp.jstl-1.2.1.jar javax.servlet.jsp.jstl-API-1.2.1.jar

然后我换了:

javax.servlet.jsp.jstl-1.2.1- sources.jar javax.servlet.jsp.jstl-API-1.2.1- sources.jar

然后我得到了标题上的错误。我不知道为什么它没有创建ImportTag。使用存档管理器打开.jar,我可以看到ImportTag.java。但是当我把jar放在WEB-INF / lib上,并通过eclipse检查jar时,我所看到的就是:

这是我的web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>agenda</display-name>

  <error-page>
    <exception-type>java.lang.Exception</exception-type>
    <location>/erro.html</location>
  </error-page>

  <error-page>
    <error-code>404</error-code>
    <location>/404.html</location>
  </error-page>
</web-app>

我正在使用tomcat 7和Java 7.

任何想法??

提前致谢。

1 个答案:

答案 0 :(得分:0)

您正在使用jar中的sources文件而不是已编译的类文件。如果将jar文件包含在类路径中,则它应包含类文件而不是源文件。

显然,jar中的源文件不会被编译。