android表单上传出现java.lang.NoClassDefFoundError

本文探讨了Android应用中遇到的NoClassDefFoundError错误的原因及解决方法,详细介绍了如何正确配置环境变量、添加依赖以及使用源文件夹方式解决类找不到的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

04-23 16:21:33.695: E/AndroidRuntime(32266): FATAL EXCEPTION: AsyncTask #1 04-23 16:21:33.695: E/AndroidRuntime(32266): java.lang.RuntimeException: An error occured while executing doInBackground() 04-23 16:21:33.695: E/AndroidRuntime(32266): at android.os.AsyncTask$3.done(AsyncTask.java:200) 04-23 16:21:33.695: E/AndroidRuntime(32266): at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273) 04-23 16:21:33.695: E/AndroidRuntime(32266): at java.util.concurrent.FutureTask.setException(FutureTask.java:124) 04-23 16:21:33.695: E/AndroidRuntime(32266): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307) 04-23 16:21:33.695: E/AndroidRuntime(32266): at java.util.concurrent.FutureTask.run(FutureTask.java:137) 04-23 16:21:33.695: E/AndroidRuntime(32266): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068) 04-23 16:21:33.695: E/AndroidRuntime(32266): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561) 04-23 16:21:33.695: E/AndroidRuntime(32266): at java.lang.Thread.run(Thread.java:1096) 04-23 16:21:33.695: E/AndroidRuntime(32266): Caused by: java.lang.NoClassDefFoundError: org.apache.http.entity.mime.MultipartEntity 04-23 16:21:33.695: E/AndroidRuntime(32266): at com.agilemobi.collect.android.tasks.DataUploaderTask.doInBackground(DataUploaderTask.java:122) 04-23 16:21:33.695: E/AndroidRuntime(32266): at com.agilemobi.collect.android.tasks.DataUploaderTask.doInBackground(DataUploaderTask.java:1) 04-23 16:21:33.695: E/AndroidRuntime(32266): at android.os.AsyncTask$2.call(AsyncTask.java:185) 04-23 16:21:33.695: E/AndroidRuntime(32266): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) 04-23 16:21:33.695: E/AndroidRuntime(32266): ... 4 more


以前出现过很多次这种错误了,一般是环境变量的配置有问题,或者jar包间存在依赖,或者jar包没有直接bulid path加到项目中来

以上问题,我android工程都没出现

org.apache.http.entity.mime.MultipartEntity这个类实现了org.apache.http.HttpEntity接口,该接口在android.jar中

MultipartEntity类在httpmime-4.0.jar中,已经build path加到libraries下,还是会出现上述错误,实在令人费解。

后面解决的办法是httpmime-4.0.jar所在的lib 右键选择 Use as Source Folder

这样,jar包直接当做源文件加到工程下,在bin下就可以看到对应jar文件,项目里就能直接引用jar中的类。

我发现如果是bulid path加进去的jar包不会在bin下编译成class文件,如果引用就报出上面的错误。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值