简体   繁体   English

如何解决“ java.lang.NoClassDefFoundError”?

[英]How to resolve “java.lang.NoClassDefFoundError”?

I am getting an error. 我收到一个错误。 Here is the log: 这是日志:

04-01 22:04:41.010: I/dalvikvm(19541): Could not find method com.quickblox.module.chat.smack.SmackAndroid.init, referenced from method com.quickblox.videochatsample.ui.App.onCreate
04-01 22:04:41.010: W/dalvikvm(19541): VFY: unable to resolve static method 13789: Lcom/quickblox/module/chat/smack/SmackAndroid;.init (Landroid/content/Context;)Lcom/quickblox/module/chat/smack/SmackAndroid;
04-01 22:04:41.010: D/dalvikvm(19541): VFY: replacing opcode 0x71 at 0x0003
04-01 22:04:41.010: D/AndroidRuntime(19541): Shutting down VM
04-01 22:04:41.010: W/dalvikvm(19541): threadid=1: thread exiting with uncaught exception (group=0x40c11a68)
04-01 22:04:41.020: E/AndroidRuntime(19541): FATAL EXCEPTION: main
04-01 22:04:41.020: E/AndroidRuntime(19541): java.lang.NoClassDefFoundError: com.quickblox.module.chat.smack.SmackAndroid
04-01 22:04:41.020: E/AndroidRuntime(19541):    at com.quickblox.videochatsample.ui.App.onCreate(App.java:13)
04-01 22:04:41.020: E/AndroidRuntime(19541):    at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:973)
04-01 22:04:41.020: E/AndroidRuntime(19541):    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3971)
04-01 22:04:41.020: E/AndroidRuntime(19541):    at android.app.ActivityThread.access$1300(ActivityThread.java:128)
04-01 22:04:41.020: E/AndroidRuntime(19541):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1199)
04-01 22:04:41.020: E/AndroidRuntime(19541):    at android.os.Handler.dispatchMessage(Handler.java:99)
04-01 22:04:41.020: E/AndroidRuntime(19541):    at android.os.Looper.loop(Looper.java:137)
04-01 22:04:41.020: E/AndroidRuntime(19541):    at android.app.ActivityThread.main(ActivityThread.java:4517)
04-01 22:04:41.020: E/AndroidRuntime(19541):    at java.lang.reflect.Method.invokeNative(Native Method)
04-01 22:04:41.020: E/AndroidRuntime(19541):    at java.lang.reflect.Method.invoke(Method.java:511)
04-01 22:04:41.020: E/AndroidRuntime(19541):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:993)
04-01 22:04:41.020: E/AndroidRuntime(19541):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:760)
04-01 22:04:41.020: E/AndroidRuntime(19541):    at dalvik.system.NativeStart.main(Native Method)  

Code: 码:

package com.quickblox.videochatsample.ui;

import android.app.Application;

import com.quickblox.module.chat.smack.SmackAndroid;


public class App extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
        SmackAndroid.init(this);
    }
}

A simple googling, and you will find the answer. 一个简单的谷歌搜索,您会找到答案。

The answer is that your jar-file does not contain the proper jar-file, that contains the java class that you need. 答案是您的jar文件不包含正确的jar文件,该文件包含您需要的java类。

If you do not use any build tool. 如果您不使用任何构建工具。 Then I would suggest that you use that. 然后,我建议您使用它。 So that you can tell the build tool to include that very important jar-file. 这样您就可以告诉构建工具包含非常重要的jar文件。

A build tool like ivy, maven, ant etc. 诸如ivy,maven,ant等构建工具。

The reason why you can use that class when you code in your IDE. 在IDE中进行编码时可以使用该类的原因。 Is that the IDE for some reason have that jar-file/class in its classpath. 是由于某种原因IDE在其类路径中具有该jar文件/类。 But not on the build path. 但不在构建路径上。 Why, it is hard to know since you have not shown your project file or equal file. 为什么,由于您没有显示项目文件或相等文件,因此很难知道。

But I'm pretty sure you can solve the problem now. 但我很确定您现在可以解决问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何在Java中解决java.lang.NoClassDefFoundError - How to resolve java.lang.NoClassDefFoundError in Java 如何解决java.lang.NoClassDefFoundError? - How to resolve java.lang.NoClassDefFoundError? 如何解决android中的java.lang.NoClassDefFoundError? - How to resolve java.lang.NoClassDefFoundError in android? 如何在以下代码中解决java.lang.NoClassDefFoundError? - How to resolve java.lang.NoClassDefFoundError in the following code? 如何解决java.lang.NoClassDefFoundError:org / hibernate / SessionFactory? - How to resolve java.lang.NoClassDefFoundError: org/hibernate/SessionFactory? 如何解决 java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException - How to resolve java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException 如何解决 Unity android 插件中的 java.lang.NoClassDefFoundError - How to resolve java.lang.NoClassDefFoundError in Unity android plugin 如何解决该错误:java.lang.BootstrapMethodError:java.lang.NoClassDefFoundError:io / vertx / core / Promise - How to resolve the error: java.lang.BootstrapMethodError: java.lang.NoClassDefFoundError: io/vertx/core/Promise java.lang.NoClassDefFoundError - java.lang.NoClassDefFoundError java.lang.NoClassDefFoundError - java.lang.NoClassDefFoundError
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM