java.lang.NoClassDefFoundError org.jivesoftware.smackx.packet.DiscoverInfo$Identity
来源:互联网 发布:简易描述linux内核 编辑:程序博客网 时间:2024/05/17 23:54
java.lang.NoClassDefFoundErrororg.jivesoftware.smackx.packet.DiscoverInfo$Identityjava.lang.RuntimeException:Unable to create application com.msqsoft.hodicloud.utils.MyApplication: java.lang.IllegalStateException: Could not init static class blocksandroid.app.ActivityThread.handleBindApplication(ActivityThread.java:4641)......Caused by:java.lang.NoClassDefFoundError:org.jivesoftware.smackx.packet.DiscoverInfo$Identityorg.jivesoftware.smackx.ServiceDiscoveryManager.<clinit>(Unknown Source)java.lang.Class.classForName(Native Method)java.lang.Class.forName(Class.java:251)com.easemob.chat.InitSmackStaticCode.initStaticCode(Unknown Source)com.easemob.chat.EMChat.init(Unknown Source)com.msqsoft.hodicloud.utils.MyApplication.onCreate(MyApplication.java:118)android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1009)android.app.ActivityThread.handleBindApplication(ActivityThread.java:4638)android.app.ActivityThread.access$1800(ActivityThread.java:141)android.app.ActivityThread$H.handleMessage(ActivityThread.java:1301)android.os.Handler.dispatchMessage(Handler.java:102)android.os.Looper.loop(Looper.java:136)android.app.ActivityThread.main(ActivityThread.java:5342)java.lang.reflect.Method.invokeNative(Native Method)java.lang.reflect.Method.invoke(Method.java:515)com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:871)com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687)dalvik.system.NativeStart.main(Native Method)
集成环信客服SDK,一运行就崩了。后来发现有一些手机是可以运行的,逐渐排除发现,可以运行的测试机差不多都是在22以上的api,打包运行测试都正常,后来测试在19的手机上运行程序闪退了
这就很尴尬了,为什么会闪退呢,于是找来个18的手机运行,果然报了错了,而且报的错误是程序的API.怎么会出错呢,22的手机都正常.
分析原因发现:
multDexEnabled true
由于程序用的是MultiDex,这个时候,我想起来了,最近项目新增加了一个比较大的第三方sdk,导致程序又庞大了不少,原来程序就因为API数超过了64K,而分成了两个dex, 自动打包成class.dex和class2.dex.
看来应该是在dex里没找到对应的那个类,好了原因找到了.由于用的MultiDex,于是我首先便检查我的application中,果然发现了出现问题的原因,我的application中没有重写attachBaseContext方法
@Overrideprotected void attachBaseContext(Context base) { super.attachBaseContext(base); MultiDex.install(this); }
重写方法后,打包运行,终于看到引导页了,困扰几天的bug终于解决了.
0 0
- java.lang.NoClassDefFoundError org.jivesoftware.smackx.packet.DiscoverInfo$Identity
- at org.jivesoftware.smackx.muc.MultiUserChat.create(MultiUserChat.java:353)
- Could not find class 'org.jivesoftware.smackx.PrivateDataManager$PrivateDataIQProvider', r
- No response from server Smack org.jivesoftware.smackx.muc.MultiUserChat.create
- java.lang.NoClassDefFoundError: org/aspectj/lang/Signature
- java.lang.NullPointerException at org.jivesoftware.openfire.admin.decorators.main_jsp._jspService(m
- java.lang.NoClassDefFoundError: org/hibernate/criterion/Criterion
- java.lang.NoClassDefFoundError: org/jaxen/JaxenException
- java.lang.NoClassDefFoundError:org/apache/commons/beanutils
- java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor
- java.lang.NoClassDefFoundError: org/aspectj/weaver/BCException
- java.lang.noclassdeffounderror: org/jaxen/jaxenexception
- java.lang.NoClassDefFoundError: org/aopalliance/intercept/MethodInterceptor
- java.lang.NoClassDefFoundError: org/aspectj/weaver/BCException
- java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContextAware
- java.lang.NoClassDefFoundError: org/jaxen/JaxenExc 错误
- java.lang.NoClassDefFoundError: org/hibernate/criterion/Criterion
- java.lang.NoClassDefFoundError: org/jaxen/JaxenException
- Exchange Server 网卡组合桥接NIC Teaming
- 在HTML中引入CSS
- espresso之异常捕获
- APP漏洞扫描器之本地拒绝服务检测详解
- 阻止事件冒泡
- java.lang.NoClassDefFoundError org.jivesoftware.smackx.packet.DiscoverInfo$Identity
- Xcode8:"subsystem: com.apple.UIKit, category: HIDEventFiltered, enable_level: 0" 的警告
- ZIP 文件读取
- 1015
- Log4j输出格式控制
- 欢迎使用CSDN-markdown编辑器
- 网易云音乐加密算法相关
- Android和iOS上通用的抓包方法: 用Fiddler抓取
- bzoj3809 Gty的二逼妹子序列