返回信息流在实习中碰到一个问题 点进来看的各位这里先谢过了
是这样的 现在有两个android library工程
1.工程A依赖于工程B
2.工程B中放了JAR包
app依赖工程A,同时app会用到JAR里面的接口
在app的mainactivity中引用JAR里边的类的时候会报运行时错误NoClassDefFoundError
我感觉是工程结构的问题 但是这个引用关系不能改
想请问版内大大们有没有思路
这是一条镜像帖。来源:北邮人论坛 / mobile-terminal-at / #23166同步于 2015/6/24
该镜像源已超过 30 天没有更新,可能在源站已被删除。
MobileTerminalAT机器人发帖
安卓android 多重引用jar包的问题
luoshuimumu
2015/6/24镜像同步9 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
【 在 ccyingzi2009 的大作中提到: 】
: 目测不应该有问题。 贴log
接的这是‘和游戏’的sdk
应该不是jar结构的问题
我照原有的结构重新实现了一套空架子 这种引用方式能跑通
但是相同的架子放到这边的代码就会出问题
这边用反射实现了类
类中调用JAR包的接口
然后就会出错
我猜是不是反射的问题 现在在查原因 谢谢关注啦
06-24 19:38:24.744: W/dalvikvm(6783): Link of class 'Lcom/xxx/sdks/platform/PlatformAndGameOffline$1;' failed
06-24 19:38:24.744: E/dalvikvm(6783): Could not find class 'com.xxx.sdks.platform.PlatformAndGameOffline$1', referenced from method com.xxx.sdks.platform.PlatformAndGameOffline.callPayRecharge
06-24 19:38:24.744: W/dalvikvm(6783): VFY: unable to resolve new-instance 850 (Lcom/xxx/sdks/platform/PlatformAndGameOffline$1;) in Lcom/xxx/sdks/platform/PlatformAndGameOffline;
06-24 19:38:24.744: W/dalvikvm(6783): Link of class 'Lcom/xxx/sdks/platform/PlatformAndGameOffline$2;' failed
06-24 19:38:24.744: E/dalvikvm(6783): Could not find class 'com.xxx.sdks.platform.PlatformAndGameOffline$2', referenced from method com.xxx.sdks.platform.PlatformAndGameOffline.onGameExit
06-24 19:38:24.744: W/dalvikvm(6783): VFY: unable to resolve new-instance 851 (Lcom/xxx/sdks/platform/PlatformAndGameOffline$2;) in Lcom/xxx/sdks/platform/PlatformAndGameOffline;
06-24 19:38:24.744: W/dalvikvm(6783): Link of class 'Lcom/xxx/sdks/platform/PlatformAndGameOffline$1;' failed
06-24 19:38:24.744: W/dalvikvm(6783): Link of class 'Lcom/xxx/sdks/platform/PlatformAndGameOffline$2;' failed
06-24 19:41:37.354: E/AndroidRuntime(6783): java.lang.NoClassDefFoundError: cn.cmgame.billing.api.GameInterface【这是和游戏sdk的东西】
06-24 19:41:37.354: E/AndroidRuntime(6783): at com.xxx.sdks.platform.PlatformAndGameOffline.callCreate(PlatformAndGameOffline.java:67)
【 在 zishi 的大作中提到: 】
: 你的lib导入进来了吗?
导了 这种结构跑通了 不是结构的问题
接的这是‘和游戏’的sdk
应该不是jar结构的问题
我照原有的结构重新实现了一套空架子 这种引用方式能跑通
但是相同的架子放到这边的代码就会出问题
这边用反射实现了类
类中调用JAR包的接口
然后就会出错
我猜是不是反射的问题 现在在查原因 谢谢关注啦
06-24 19:38:24.744: W/dalvikvm(6783): Link of class 'Lcom/xxx/sdks/platform/PlatformAndGameOffline$1;' failed
06-24 19:38:24.744: E/dalvikvm(6783): Could not find class 'com.xxx.sdks.platform.PlatformAndGameOffline$1', referenced from method com.xxx.sdks.platform.PlatformAndGameOffline.callPayRecharge
06-24 19:38:24.744: W/dalvikvm(6783): VFY: unable to resolve new-instance 850 (Lcom/xxx/sdks/platform/PlatformAndGameOffline$1;) in Lcom/xxx/sdks/platform/PlatformAndGameOffline;
06-24 19:38:24.744: W/dalvikvm(6783): Link of class 'Lcom/xxx/sdks/platform/PlatformAndGameOffline$2;' failed
06-24 19:38:24.744: E/dalvikvm(6783): Could not find class 'com.xxx.sdks.platform.PlatformAndGameOffline$2', referenced from method com.xxx.sdks.platform.PlatformAndGameOffline.onGameExit
06-24 19:38:24.744: W/dalvikvm(6783): VFY: unable to resolve new-instance 851 (Lcom/xxx/sdks/platform/PlatformAndGameOffline$2;) in Lcom/xxx/sdks/platform/PlatformAndGameOffline;
06-24 19:38:24.744: W/dalvikvm(6783): Link of class 'Lcom/xxx/sdks/platform/PlatformAndGameOffline$1;' failed
06-24 19:38:24.744: W/dalvikvm(6783): Link of class 'Lcom/xxx/sdks/platform/PlatformAndGameOffline$2;' failed
06-24 19:41:37.354: E/AndroidRuntime(6783): java.lang.NoClassDefFoundError: cn.cmgame.billing.api.GameInterface【这是和游戏sdk的东西】
06-24 19:41:37.354: E/AndroidRuntime(6783): at com.xxx.sdks.platform.PlatformAndGameOffline.callCreate(PlatformAndGameOffline.java:67)
还是我naive了 闪屏还没起来就报错
为不耽误大家思考时间就先来贴log
麻烦告知有可能的错误类型 内部类的原因?
06-24 19:50:55.984: W/ActivityThread(8411): Application com.xxx.xx.platform.andgame is waiting for the debugger on port 8100...
06-24 19:50:57.854: W/dalvikvm(8411): VFY: unable to resolve static method 4402: Lcn/cmgame/billing/api/GameInterface;.initializeApp (Landroid/app/Activity;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcn/cmgame/billing/api/GameInterface$ILoginCallback;)V
06-24 19:50:57.864: W/dalvikvm(8411): Link of class 'Lcom/xxx/sdks/platform/PlatformAndGameOffline$1;' failed
06-24 19:50:57.874: E/dalvikvm(8411): Could not find class 'com.xxx.sdks.platform.PlatformAndGameOffline$1', referenced from method com.xxx.sdks.platform.PlatformAndGameOffline.callPayRecharge
06-24 19:50:57.874: W/dalvikvm(8411): VFY: unable to resolve new-instance 850 (Lcom/xxx/sdks/platform/PlatformAndGameOffline$1;) in Lcom/xxx/sdks/platform/PlatformAndGameOffline;
06-24 19:50:57.874: W/dalvikvm(8411): Link of class 'Lcom/xxx/sdks/platform/PlatformAndGameOffline$2;' failed
06-24 19:50:57.874: E/dalvikvm(8411): Could not find class 'com.xxx.sdks.platform.PlatformAndGameOffline$2', referenced from method com.xxx.sdks.platform.PlatformAndGameOffline.onGameExit
06-24 19:50:57.874: W/dalvikvm(8411): VFY: unable to resolve new-instance 851 (Lcom/xxx/sdks/platform/PlatformAndGameOffline$2;) in Lcom/xxx/sdks/platform/PlatformAndGameOffline;
06-24 19:50:57.884: W/dalvikvm(8411): Link of class 'Lcom/xxx/sdks/platform/PlatformAndGameOffline$1;' failed
06-24 19:50:57.884: W/dalvikvm(8411): Link of class 'Lcom/xxx/sdks/platform/PlatformAndGameOffline$2;' failed
来结帖
也许是和游戏SDK跟Lua冲突导致classnotfound
把所有调用jar接口的语句放到主线程执行问题解决
但是闪屏起来之前依然会报link class failed
大家到山穷水尽时可以考虑这种可能性
【 在 luoshuimumu (落水木木) 的大作中提到: 】
: 还在找原因…
: 通过『我邮2.0』发布
通过『我邮2.0』发布