1

我已将 .jar 导入到我的 Eclipse Android 项目中(将其导入 libs 文件夹并将 jar 添加到 Java Build Path 中的库中),但是当我尝试使用它时,我得到一个 java.lang.VerifyError。我使用的 JAR 库是 starIOport.jar。它来自用于在 Android 手机上使用移动打印机的 SDK。它由 Star Micronics 公司制造。我的打印机是 SM-T300,但这可能没关系,因为我什至无法与打印机通信。每次我到达对象时都会收到错误,该对象的类从 jar 中导入类。有谁知道,该怎么办?我在互联网上的任何地方都没有发现有人用这个罐子解决这个特定问题。我不认为其中有一些与 android 不兼容的东西,因为它是为 android 设备制作的。也不适用于我朋友的安卓手机。甚至在模拟器中也没有。

链接到 SDK。它是较新的版本,但我对这个版本也有同样的问题。:http: //www.starmicronics.com/absolutefm/absolutefm/? f=174

这是我的日志

05-05 14:26:46.032: E/AndroidRuntime(3006): Caused by: java.lang.VerifyError: com.StarMicronics.StarIOSDK.PrinterFunctions
05-05 14:26:46.032: E/AndroidRuntime(3006):     at com.StarMicronics.StarIOSDK.StarIOSDKActivity.GetStatus(StarIOSDKActivity.java:71)

这就是导致它的原因。它不是唯一的,每一行对类 PrinterFunctions 做一些事情,它导入 jar 类,都会导致错误。

PrinterFunctions.CheckStatus(this, portName, portSettings);
4

1 回答 1

1

假设您使用的是此 ADT 版本或更高版本,库处理自 r17 版本以来已更改。

您也可以这样做来解决问题:

  1. 项目属性 > Java 构建路径 > 排序和导出
  2. 将 JAR 置于列表顶部

这是从 r16 升级后参考 JAR 问题的好文章:http ://android.foxykeep.com/dev/how-to-fix-the-classdefnotfounderror-with-adt-17

于 2012-05-10T05:17:22.967 回答