1.在做使用struts2进行文件上传时总是出现 java.lang.NoClassDefFoundError: org/apache/commons/io/output/DeferredFileOutputStream
于是google了一下,网上90%是说没导入commons-io包,但是我在项目里明明是已经把这个包导入了,
也有兄弟说可能是版本的问题,但换了几个commons-io版本都还是报这个错误啊,我都找了两天这个问题了,头都疼了。
因为项目中要用到这个上传,请高手们出手救救小弟。
回答1:这里以经很明显了,
1: 你先确认下.是在WEB/lib下..
2: 确认是否在tomcate工程目录下也有..
回答2:我也经常出现过 这种情况 ,,, 没有错,,就是包没有发布到项目中去。。。
重启一下 eclipse 看看 吧包 直接拷到 lib 下
回答3:我也遇到了与楼主同样的问题,经过请问了前辈之后,知道了是包冲突。但是我的情况我还是要说一下:
我在页面上用到了文件上传这个功能,提交时会出项“服务器内部错误···”,在我的“TOMCAT的LIB文件夹”和“项目目录的LIB文件夹”下都有commons-fileupload-1.2.jar包,前辈告诉我说是去掉TOMCAT的LIB文件夹里的commons-fileupload-1.2.jar。之后我的问题就解决了,楼主可以试试!
回答4:应该是 commons-fileupload 与 commons-io 包版本问题。
我项目是 eclipse + maven struts2.1.8 上面方法都试了。还是不行。
最终的版本更新为最新的 2.2.3.1 就无上面问题了。