java.lang.ClassNotFoundException:org.apache.commons.fileupload.FileItemFactory [重复]

2024-03-23

我已关注本教程 http://www.tutorialspoint.com/servlets/servlets-file-uploading.htm用于使用 servlet 进行文件上传。

这是文件夹结构(使用 Eclipse 创建的动态项目)。我没有将 Maven 用于这个简单的项目。我将外部 jar 添加到构建路径中。

当我启动 Tomcat 并通过右键单击 Eclipse 中的项目 > Run on Server 来部署此应用程序时,我得到

Caused by: java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory
    at java.lang.Class.getDeclaredFields0(Native Method)
    at java.lang.Class.privateGetDeclaredFields(Class.java:2499)
    at java.lang.Class.getDeclaredFields(Class.java:1811)
    at org.apache.catalina.util.Introspection.getDeclaredFields(Introspection.java:106)
    at org.apache.catalina.startup.WebAnnotationSet.loadFieldsAnnotation(WebAnnotationSet.java:270)
    at org.apache.catalina.startup.WebAnnotationSet.loadApplicationServletAnnotations(WebAnnotationSet.java:139)
    at org.apache.catalina.startup.WebAnnotationSet.loadApplicationAnnotations(WebAnnotationSet.java:65)
    at org.apache.catalina.startup.ContextConfig.applicationAnnotationsConfig(ContextConfig.java:415)
    at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:892)
    at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:386)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5380)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    ... 6 more
Caused by: java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileItemFactory
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)
    ... 20 more

请帮助我解决这里出了什么问题以及如何解决这个问题?


您需要复制所需的内容commons罐子到你的/WEB-INF/lib文件夹也是如此。

commons-io-2.4.jar
commons-fileupload-1.3.1.jar

原因是,仅将 jar 依赖项添加到 Eclipse 项目的构建路径并不会使它们在 Tomcat 上自动可用。由于缺少依赖项(在lib文件夹)您的 Web 应用程序部署失败。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java.lang.ClassNotFoundException:org.apache.commons.fileupload.FileItemFactory [重复] 的相关文章

随机推荐

  • 如何获取Yii2和DbManager中特定角色的用户?

    如何在RBAC中获取Yii2和DbManager中特定角色的用户 请介绍一些用于用户管理和角色管理的API 我搜索并阅读Yii2 指南 http www yiiframework com doc 2 0 guide index html但我
  • Android 持久化有什么用?

    有什么用安卓 持久 真 特性
  • jQuery JSON ajax 请求上的空请求正文

    服务器 在 Heroku 上运行的 Django 1 4 所有请求都是 HTTPS 我的 ajax 调用如下所示 var data username form find input name username val email form
  • SQL Server FOR XML Path创建重复节点

    我想使用 SQL Server 2012 生成以下输出
  • Apache 和 git-http-backend

    我目前正在使用 Apache 2 4 7 的 Ubuntu LTS 14 04 机器上设置一些 git 存储库 这是阿帕奇的配置 SetEnv GIT PROJECT ROOT var www html git SetEnv GIT HTT
  • UnsafeNativeMethods.IWebBrowser2.Navigate2 中的 HRESULT E_FAIL

    我们在 Office 2007 中使用 NET 3 5 开发了一个复杂的应用程序 在某些表单中 我们使用 WebBrowser 控件导航到 HTML 页面 问题在于 在某些机器上 当控件调用 Navigate 方法时 它会引发异常 错误 H
  • 如何在子窗体打开时冻结父窗体

    我遇到的情况是 在某些情况下 我需要打开另一个表单并保持该表单的焦点 modal true 当它们不聚焦并且关闭时 父表单上的控件将使用可能已更改的可能数据进行刷新 最初我有一个方法可以DoEvents虽然子表单已打开 但它导致多个子表单无
  • 单击“确定”后如何停止 sweetalert 滚动到顶部?

    我在用着甜蜜警报2 https sweetalert2 github io当用户在我的网站上发表评论时的脚本 它会向下滚动到他们的评论并弹出甜蜜警报 但是当他们在甜蜜警报框中单击 确定 时 它会滚动回顶部 从我读到的内容来看 我需要某种预防
  • 禁用 Alamofire iOS 缓存

    我试图在使用 Alamofire 发出 iOS 请求时禁用缓存 当我尝试向服务器发出请求 然后以其他用户身份进行身份验证时发出请求时 我会收到 304 状态代码 我已经尝试过一切这个链接 https stackoverflow com qu
  • 具有 HTML 支持的 Angular Material 工具提示

    我只是想知道有没有好的第三方angular material tool tip plugin在 的支持下HTML 我在用Material design with Angular 7仅 无引导程序 虽然我正在使用ng2 工具提示指令 http
  • 函数超时(Windows)?

    我正在尝试为特定功能实现超时 我检查了SE中的许多问题 但找不到任何适合我的问题的解决方案 因为 我在 Windows 中运行 python 超时应用于我无法控制的Python函数 即它是在已经设计的模块中定义的 python函数不是子进程
  • 如何通过 ID 检查 Scratch 项目是否被共享?

    我不希望很多人知道这一点 但是有没有办法检查 Scratch 项目 ID 是否属于共享项目 例如 项目 ID3是一个实际项目 但不共享 而 ID399293697是共享的 那么我如何使用 JavaScript 来查看这些是否共享呢 我搜索了
  • “RVM 不是函数”错误

    RVM 已正确安装在我的计算机上 运行 Mac OSX 10 6 8 并且运行良好 奇怪的是 要运行它 我必须使用source rvm scripts rvm对于每个新会话 我尝试从它创建一个符号链接 opt local bin rvm 但
  • 如何删除 poi 3.8 中的超链接?

    我在读取包含 poi 中超链接文本的 Excel 文件时遇到一些问题 数据是这样的 excel文件 1 type category job type position name email 2 测试 开发商 兼职 经理 洪 asdf dsa
  • 广播接收器中的 Android AlarmManager

    我有广播接收器 该广播接收器应安排警报 通常我会这样做 AlarmManager am AlarmManager getSystemService ALARM SERVICE am set AlarmManager RTC time myP
  • 如何保持 Mercurial 存储库较小?

    我的中央存储库存储在 8GB USB 记忆棒上 我不小心提交了一些大文件 因此存储库不再适合放在内存条上 有办法纠正这种情况吗 我投票赞成了吸引人的答案 因为他有你可能会使用的步骤 但这里有一个方便的列表 不过 首先要提醒一下 如果您已经将
  • 使用 Boost::spirit 编写的解析器存在性能问题

    我想解析一个如下所示的文件 类似 FASTA 的文本格式 gt InfoHeader Some text sequence that has a line break after every 80 characters gt InfoHea
  • Facebook og:图像未以全尺寸显示

    从 ElfYourself com 共享视频时 发送到 Facebook 的 OG 图像为 130x130 像素 Facebook 表示 这是它将在新闻提要 时间轴中显示的最大尺寸 然而 Facebook 在图像提要中实际显示的是 90x9
  • 我们可以在 sails 中的 Create() 回调之后/之前更改属性值吗?

    我有一个场景 我必须用模型的 id 填充模型的属性 对于例如 在用户模型中 module exports attributes activation link string afterCreate function value cb val
  • java.lang.ClassNotFoundException:org.apache.commons.fileupload.FileItemFactory [重复]

    这个问题在这里已经有答案了 我已关注本教程 http www tutorialspoint com servlets servlets file uploading htm用于使用 servlet 进行文件上传 这是文件夹结构 使用 Ecl