android使用外部java lib时获取java lang验证错误

时间:2012-11-16 10:56:25

标签: java android verifyerror lang

我在我的android项目中使用外部库在调用导入该库的类时获取javalang验证错误,它是java.jxl库

任何帮助请我在我的库项目中创建一个名为lib的目录,然后在库中引用它。这个库与原始的Android应用程序链接。

我也得到以下信息

11-16 18:12:40.230: W/dalvikvm(14253): VFY: unable to resolve static method 260: Ljxl/Workbook;.getWorkbook (Ljava/io/InputStream;)Ljxl/Workbook;
11-16 18:12:40.230: D/dalvikvm(14253): VFY: replacing opcode 0x71 at 0x000c
11-16 18:12:40.230: W/dalvikvm(14253): VFY: unable to resolve exception class 124 (Ljxl/read/biff/BiffException;)
11-16 18:12:40.230: W/dalvikvm(14253): VFY: unable to find exception handler at addr 0x11
11-16 18:12:40.230: W/dalvikvm(14253): VFY:  rejected Lcom/kd/hockymain/Kdexcel;.getfile ()V
11-16 18:12:40.230: W/dalvikvm(14253): VFY:  rejecting opcode 0x0d at 0x0011
11-16 18:12:40.230: W/dalvikvm(14253): VFY:  rejected Lcom/kd/hockymain/Kdexcel;.getfile ()V
11-16 18:12:40.230: W/dalvikvm(14253): Verifier rejected class Lcom/kd/hockymain/Kdexcel;

1 个答案:

答案 0 :(得分:1)

应将库放在libs/目录中(不是lib/,请注意尾部斜杠)。请参阅this answer

这会将已编译的库代码转换为Dalvik格式,并将为Eclipse提供符号定义。