引用.jar库时无法解决超类错误

sak*_*thi 31 android classnotfoundexception android-library

  1. 我做了一个Android项目并运行它.它运行成功.
  2. 我用Java开发了一个Web服务并托管它.它运行成功.
  3. 我将web服务导出到.jar并将其添加到我的Android项目中.
  4. 当我尝试在Web服务中调用方法时,我收到Unable to resolve superclass错误.

我的错误日志:

Unable to resolve superclass of Lweb/service/RandomWordGeneratorService; (73)
Link of class 'Lweb/service/RandomWordGeneratorService;' failed 
Could not find class 'web.service.RandomWordGeneratorService',
    referenced from method tam.miru.Login$1.onClick
VFY: unable to resolve new-instance 110 Lweb/service/RandomWordGeneratorService;)
    in Ltam/miru/Login$1; 
VFY: replacing opcode 0x22 at 0x005a    
VFY: dead code 0x005c-006e in Ltam/miru/Login$1;.onClick (Landroid/view/View;)
Run Code Online (Sandbox Code Playgroud)

rab*_*lin 71

刚升级到ADT 17后才开始解决这个问题.

发现外部.jar文件需要位于"libs"(带有s)文件夹中,否则它们的类不包含在创建的.dex文件中.在升级之前,我的.jar文件在'lib'文件夹(没有s)中一切正常.

  • 更多信息[此处](https://plus.google.com/u/0/109385828142935151413/posts/RL91VJd1yti) (4认同)

Leo*_*nto 14

在我的情况下,我不得不去Properties->Java Build Path->Order and Export检查Android Private Libraries,然后清理项目,并正常工作.