繁体   English   中英

动态Web项目:“java.lang.ClassNotFoundException”尽管WEB-INF / lib目录中的.jar文件

[英]dynamic web project: “java.lang.ClassNotFoundException” despite .jar file in the WEB-INF/lib directory

我正在进行一项需要一些.jar文件的作业。 该任务要求我使用JSP文件对Tomcat servlet进行一些工作。

我将我的.jars包含在Eclipse的Java Build Path中,并将它们复制/添加到WEB-INF / lib目录中。

当我像这样运行项目时: http://localhost:8080/project/我看到带有空div的index.jsp页面,其中数据应来自通过TestServlet.java执行的代码。

寻找原因,当我签出http://localhost:8080/project/TestServlet时,我看到以下错误:

May 3, 2013 1:22:26 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [TestServlet] in context with path [/project] threw exception [Servlet execution threw an exception]
with root cause java.lang.ClassNotFoundException: com.aetrion.flickr.FlickrException

    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1713)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1558)
    at TestServlet.doGet(TestServlet.java:27)

    at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:947)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1009)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    at java.lang.Thread.run(Thread.java:680)

这很奇怪,因为我再次将.jars包含在Java Build Path中,并将.jars复制/添加到WEB-INF / lib目录中。

任何想法或帮助?

只是为了确定,首先你把jar放在web-inf / lib中,然后在t project> build path> configure build path> add jar中按顺序添加它,对吗?

尝试在“库”选项卡中移动罐子顶部或几乎顶部...将是一个可见性的问题

您必须尝试在类路径中添加jar,项目>构建路径>配置构建路径>添加jar(或外部jar)

即使我有同样的问题。这就是我解决它的方法:您可以将外部jar添加到tomcat文件夹 - > lib->在系统中添加外部jar,添加从项目中删除该文件夹后再添加或者你可以删除tomcat文件夹并从tomcat文件夹 - > lib复制所有jar文件,你可以将它作为外部jar添加到你的项目中

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM