如何修复NoClassDefFoundError?

时间:2013-05-15 00:02:40

标签: noclassdeffounderror

我试图使用FTP客户端上传文件当我在我的本地计算机上部署我的应用程序时它将文件上传到服务器没有任何问题但是当我在服务器上使用相同的应用程序将文件上传到同一服务器时我得到了这个异常< / p>

ERROR TP-Processor719 org.apache.catalina.core.ContainerBase。[Catalina]。[jodads.com]。[/ ShayaktiAdmin]。[UploadItem] - Servlet.service()for servlet UploadItem引发异常 java.lang.NoClassDefFoundError:org / apache / tomcat / util / http / fileupload / servlet / ServletFileUpload     在com.shayakti.servlet.UploadItemServlet.processRequest(UploadItemServlet.java:99)     在com.shayakti.servlet.UploadItemServlet.doPost(UploadItemServlet.java:424)     在javax.servlet.http.HttpServlet.service(HttpServlet.java:637)     在javax.servlet.http.HttpServlet.service(HttpServlet.java:717)     在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)     在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)     在org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)     在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)     在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)     在org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)     在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)     在org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)     在org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:311)     在org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:776)     在org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:705)     在org.apache.jk.common.ChannelSocket $ SocketConnection.runIt(ChannelSocket.java:898)     at org.apache.tomcat.util.threads.ThreadPool $ ControlRunnable.run(ThreadPool.java:690)     在java.lang.Thread.run(Thread.java:662)

在我发布之前我试着弄清楚是什么问题并做一些搜索大多数帖子告诉我们服务器中缺少common-io所以我下载了common-io jar并将其添加到我的应用程序然后重新上传到服务器但没有希望:(

我确实联系了服务器主机支持,他们告诉我在我的本地机器上使用的tomcat包含一些未在服务器tomcat中提供的lib !!!

我绝望,我不应该怎么办!!!

1 个答案:

答案 0 :(得分:2)

服务器上有哪个版本的tomcat?看起来ServletFileUpload是在tomcat 7中引入的。http://mavenhub.com/c/org/apache/tomcat/util/http/fileupload/servlet/ServletFileUpload/jar