【问题标题】:jar dependencies in android- no class definition found exceptionandroid中的jar依赖项-找不到类定义异常
【发布时间】:2011-02-02 03:06:36
【问题描述】:

我自己解决了这个问题。事实证明,激活框架需要一些不是 android 原生的库,myjava.awt.datatransfer、org.apache.harmony.awt.* 和 org.apache.harmony.misc。一旦我添加了这些库,一切正常。

我正在尝试使用 gdata java android上的客户端库并拥有 管理了一个体面的黑客来获得它 在职的。然而,因为罐子 gdata 有一些包装差异 使用 android 我必须导入 源到我的项目中。这个来源 依赖于 JavaMail API 和 JavaBeans 激活框架为 指定here

我的问题是 JavaMail jar 抛出未找到的类定义 当寻找一个在 激活框架 jar。一个堆栈 下面列出了跟踪。我在工作 在 Eclipse 中,并将两个 jars 放在一个库中 文件夹并添加到我的构建路径中。 我不是很有经验处理 在这种情况下的罐子,所以任何 帮助或见解将不胜感激。

03-29 09:55:26.204: ERROR/AndroidRuntime(331): Uncaught handler: thread AsyncTask #3 exiting due to uncaught exception
03-29 09:55:26.215: ERROR/AndroidRuntime(331): java.lang.RuntimeException: An error occured while executing doInBackground()
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at android.os.AsyncTask$3.done(AsyncTask.java:200)
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273)
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at java.util.concurrent.FutureTask.setException(FutureTask.java:124)
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307)
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at java.util.concurrent.FutureTask.run(FutureTask.java:137)
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068)
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561)
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at java.lang.Thread.run(Thread.java:1096)
03-29 09:55:26.215: ERROR/AndroidRuntime(331): Caused by: java.lang.NoClassDefFoundError: javax.activation.DataHandler
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at javax.mail.internet.MimeBodyPart.setContent(MimeBodyPart.java:684)
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at com.google.gdata.data.media.MediaBodyPart.<init>(MediaBodyPart.java:95)
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at com.google.gdata.data.media.MediaMultipart.<init>(MediaMultipart.java:126)
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at com.google.gdata.client.media.MediaService.insert(MediaService.java:382)
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at android.os.AsyncTask$2.call(AsyncTask.java:185)
03-29 09:55:26.215: ERROR/AndroidRuntime(331):     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)

【问题讨论】:

    标签: java android jar


    【解决方案1】:

    好像不支持安卓。也许在未来的 SDK 中。 Link 由于它使用 Davlik Runtime 而不是标准 JRE 运行,因此有 可能缺少 Davlik JRE 中没有的类。

    【讨论】:

    • 链接的错误实际上是我已经处理过的一个,这个是特定于激活和邮件罐的。我开始认为我只需要包括这些罐子的来源。
    【解决方案2】:

    我自己解决了这个问题。事实证明,激活框架需要一些不是 android 原生的库,myjava.awt.datatransfer、org.apache.harmony.awt.* 和 org.apache.harmony.misc。一旦我添加了这些库,一切正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-14
      • 2017-01-02
      相关资源
      最近更新 更多