致命异常java.lang.NoClassDefFoundError的:失败分辨率:Lorg /阿帕奇/ HTTP / UTIL /参数数量 [英] FATAL EXCEPTION java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/util/Args

查看:2758
本文介绍了致命异常java.lang.NoClassDefFoundError的:失败分辨率:Lorg /阿帕奇/ HTTP / UTIL /参数数量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用的是 httppost 方法发送录制的音频文件到服务器上,但我收到以下错误:


  

致命异常java.lang.NoClassDefFoundError的:失败分辨率:Lorg /阿帕奇/ HTTP / UTIL /参数数量


下面是我的code:

 文件是=新的文件(Environment.getExternalStorageDirectory()getAbsolutePath()+/+的java codegeeksRecording.3gpp。);字符串yourNodeJsBluemixRoute =htt​​p://mobilefeedbackform.mybluemix.net;
 尝试{
     Toast.makeText(MainActivity.this,
            内部尝试,Toast.LENGTH_LONG)
                。显示();
        的System.out.println(是);
        HttpClient的客户端=新DefaultHttpClient();
        HttpPost后=新HttpPost(yourNodeJsBluemixRoute);
        Toast.makeText(MainActivity.this,
                送之前,Toast.LENGTH_LONG)
                   。显示();
        post.setHeader(ENCTYPE,多部分/表单数据);        / * FileBody斌=新FileBody(是); * /
        FileBody FB =新FileBody(就是音频/ 3GPP);
        MultipartEntity reqEntity =新MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
        reqEntity.addPart(文件,FB); / *我认为,文件是在PHP部分名* /
        post.setEntity(reqEntity);        HTT presponse响应= client.execute(岗位);        Toast.makeText(MainActivity.this,
                现在发送,Toast.LENGTH_LONG)
                   。显示();
        HttpEntity resEntity = response.getEntity();
        如果(resEntity!= NULL){
            字符串responseBody = EntityUtils.toString(resEntity);
            字符串RESP = responseBody;
            Toast.makeText(MainActivity.this,
                    RESP,Toast.LENGTH_LONG)
                       。显示();
            Log.i(反应,EntityUtils.toString(resEntity));
        }
            }赶上(例外五){
    e.printStackTrace();
        }       }赶上(例外五){
            // TODO自动生成catch块
            e.printStackTrace();
        }
   }

我缺少什么?

logcat的错误:

  08-19 19:57:17.51​​7:E / AndroidRuntime(1377):致命异常:主要
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):工艺:com.example.android_test,PID:1377
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):java.lang.NoClassDefFoundError的:失败分辨率:Lorg /阿帕奇/ HTTP / UTIL /参数数量;
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在org.apache.http.entity.mime.content.AbstractContentBody<&初始化GT;(AbstractContentBody.java:48)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在org.apache.http.entity.mime.content.FileBody<&初始化GT;(FileBody.java:96)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在org.apache.http.entity.mime.content.FileBody<&初始化GT;(FileBody.java:85)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在com.example.android_test.MainActivity.play(MainActivity.java:181)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在com.example.android_test.MainActivity $ 3.onClick(MainActivity.java:91)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在android.view.View.performClick(View.java:4756)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在android.view.View $ PerformClick.run(View.java:19749)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在android.os.Handler.handleCallback(Handler.java:739)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在android.os.Handler.dispatchMessage(Handler.java:95)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在android.os.Looper.loop(Looper.java:135)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在android.app.ActivityThread.main(ActivityThread.java:5221)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在java.lang.reflect.Method.invoke(本机方法)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在java.lang.reflect.Method.invoke(Method.java:372)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:899)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):抛出java.lang.ClassNotFoundException:产生的原因没有在路径上找到的类org.apache.http.util.Args:DexPathList [zip文件 /data/app/com.example.android_test-1/base.apk\"],nativeLibraryDirectories=[/vendor/lib,/系统/ lib目录]
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在java.lang.ClassLoader.loadClass(ClassLoader.java:511)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在java.lang.ClassLoader.loadClass(ClassLoader.java:469)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):15 ...更多
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):燮pressed:抛出java.lang.ClassNotFoundException:org.apache.http.util.Args
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在java.lang.Class.classForName(本机方法)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在java.lang.BootClassLoader.findClass(ClassLoader.java:781)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):在java.lang.ClassLoader.loadClass(ClassLoader.java:504)
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):16 ...更多
08-19 19:57:17.51​​7:E / AndroidRuntime(1377):java.lang.NoClassDefFoundError的:致类没有使用引导类加载器找到;没有堆栈可用


解决方案

我也努力在Apache的东西,我碰到这个错误。
我能够通过下载的.jar修复它,然后在项目设置链接它手动。

您应该在你的应用程序/建设/库移动罐子
文件>>项目结构>> >>依赖>> +依赖文件>>,然后将其更改为提供的,而不是编译(编译会导致非零值1一个java的出口如果要导入太多罐子)

I am sending a recorded audio file to the server using the httppost method, but I am receiving the following error:

FATAL EXCEPTION java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/util/Args

Here is my code:

File is = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/" + "javacodegeeksRecording.3gpp");           

String yourNodeJsBluemixRoute = "http://mobilefeedbackform.mybluemix.net";
 try {
     Toast.makeText(MainActivity.this,
            "Inside try", Toast.LENGTH_LONG)
                .show();
        System.out.println(is);
        HttpClient client = new DefaultHttpClient();
        HttpPost post = new HttpPost(yourNodeJsBluemixRoute);
        Toast.makeText(MainActivity.this,
                "Before sending", Toast.LENGTH_LONG)
                   .show();
        post.setHeader("enctype", "multipart/form-data");

        /*FileBody bin = new FileBody(is);*/
        FileBody fb = new FileBody(is, "audio/3gpp");
        MultipartEntity reqEntity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
        reqEntity.addPart("file", fb); /*I believe that the "file" is the name in php part*/
        post.setEntity(reqEntity);

        HttpResponse response = client.execute(post);

        Toast.makeText(MainActivity.this,
                "Now sending", Toast.LENGTH_LONG)
                   .show();
        HttpEntity resEntity = response.getEntity();
        if (resEntity != null) {
            String responseBody = EntityUtils.toString(resEntity);
            String resp = responseBody;
            Toast.makeText(MainActivity.this,
                    resp, Toast.LENGTH_LONG)
                       .show();
            Log.i("RESPONSE", EntityUtils.toString(resEntity));
        }
            } catch (Exception e) {
    e.printStackTrace();
        }

       } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
   }

What am I missing?

logcat errors:

08-19 19:57:17.517: E/AndroidRuntime(1377): FATAL EXCEPTION: main
08-19 19:57:17.517: E/AndroidRuntime(1377): Process: com.example.android_test, PID: 1377
08-19 19:57:17.517: E/AndroidRuntime(1377): java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/util/Args;
08-19 19:57:17.517: E/AndroidRuntime(1377):     at org.apache.http.entity.mime.content.AbstractContentBody.<init>(AbstractContentBody.java:48)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at org.apache.http.entity.mime.content.FileBody.<init>(FileBody.java:96)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at org.apache.http.entity.mime.content.FileBody.<init>(FileBody.java:85)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at com.example.android_test.MainActivity.play(MainActivity.java:181)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at com.example.android_test.MainActivity$3.onClick(MainActivity.java:91)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at android.view.View.performClick(View.java:4756)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at android.view.View$PerformClick.run(View.java:19749)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at android.os.Handler.handleCallback(Handler.java:739)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at android.os.Handler.dispatchMessage(Handler.java:95)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at android.os.Looper.loop(Looper.java:135)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at android.app.ActivityThread.main(ActivityThread.java:5221)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at java.lang.reflect.Method.invoke(Native Method)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at java.lang.reflect.Method.invoke(Method.java:372)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
08-19 19:57:17.517: E/AndroidRuntime(1377): Caused by: java.lang.ClassNotFoundException: Didn't find class "org.apache.http.util.Args" on path: DexPathList[[zip file "/data/app/com.example.android_test-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
08-19 19:57:17.517: E/AndroidRuntime(1377):     at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
08-19 19:57:17.517: E/AndroidRuntime(1377):     at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
08-19 19:57:17.517: E/AndroidRuntime(1377):     ... 15 more
08-19 19:57:17.517: E/AndroidRuntime(1377):     Suppressed: java.lang.ClassNotFoundException: org.apache.http.util.Args
08-19 19:57:17.517: E/AndroidRuntime(1377):         at java.lang.Class.classForName(Native Method)
08-19 19:57:17.517: E/AndroidRuntime(1377):         at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
08-19 19:57:17.517: E/AndroidRuntime(1377):         at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
08-19 19:57:17.517: E/AndroidRuntime(1377):         at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
08-19 19:57:17.517: E/AndroidRuntime(1377):         ... 16 more
08-19 19:57:17.517: E/AndroidRuntime(1377):     Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available

解决方案

I was also working on apache stuff, and I run into that error. I was able to fix it by downloading the .jar and then link it in the project settings manually.

You should move the jar under your app/build/libs Files >> Project Structure >> Dependencies >> + >> File Dependencies >> and then change it to provided instead of compile (compile will cause a java exit with nonzero value 1 if you are importing too much jars)

这篇关于致命异常java.lang.NoClassDefFoundError的:失败分辨率:Lorg /阿帕奇/ HTTP / UTIL /参数数量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆