簡體   English   中英

java.lang.NoClassDefFoundError:com.amazonaws.services.s3.AmazonS3Client

[英]java.lang.NoClassDefFoundError: com.amazonaws.services.s3.AmazonS3Client

我已經在我的eclipse(ADT eclipse)中導入了S3Uploader示例,我正在嘗試運行它。

我已經導入了項目,然后添加了以下jar項目>屬性> java構建路徑>添加jar

02/02/2014 01:24 PM 6,376,630 aws-android-sdk-1.7.1.1-debug.jar 02/02/2014 01:14 PM 281,550 aws-android-sdk-1.7.1.1-s3.jar 02/02 / 02 2014 01:24 PM 5,587,005 aws-android-sdk-1.7.1.1.jar

項目編譯和構建正常。但是當我運行它時,它給出以下異常

02-02 13:39:03.151: E/dalvikvm(20716): Could not find class 'com.amazonaws.services.s3.AmazonS3Client', referenced from method com.amazonaws.demo.s3uploader.S3UploaderActivity.<init>
02-02 13:39:03.151: W/dalvikvm(20716): VFY: unable to resolve new-instance 40 (Lcom/amazonaws/services/s3/AmazonS3Client;) in Lcom/amazonaws/demo/s3uploader/S3UploaderActivity;
02-02 13:39:03.151: D/dalvikvm(20716): VFY: replacing opcode 0x22 at 0x0004
02-02 13:39:03.151: D/dalvikvm(20716): VFY: dead code 0x0006-0018 in Lcom/amazonaws/demo/s3uploader/S3UploaderActivity;.<init> ()V
02-02 13:39:03.161: W/dalvikvm(20716): VFY: unable to find class referenced in signature (Lcom/amazonaws/services/s3/AmazonS3Client;)
02-02 13:39:03.161: W/dalvikvm(20716): VFY: unable to resolve static field 33 (US_WEST_2) in Lcom/amazonaws/regions/Regions;
02-02 13:39:03.161: D/dalvikvm(20716): VFY: replacing opcode 0x62 at 0x0005
02-02 13:39:03.161: D/dalvikvm(20716): VFY: dead code 0x0007-003c in Lcom/amazonaws/demo/s3uploader/S3UploaderActivity;.onCreate (Landroid/os/Bundle;)V
02-02 13:39:03.161: D/AndroidRuntime(20716): Shutting down VM
02-02 13:39:03.161: W/dalvikvm(20716): threadid=1: thread exiting with uncaught exception (group=0x4001d5a0)
02-02 13:39:03.161: E/AndroidRuntime(20716): FATAL EXCEPTION: main
02-02 13:39:03.161: E/AndroidRuntime(20716): java.lang.NoClassDefFoundError: com.amazonaws.services.s3.AmazonS3Client
02-02 13:39:03.161: E/AndroidRuntime(20716):    at com.amazonaws.demo.s3uploader.S3UploaderActivity.<init>(S3UploaderActivity.java:45)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at java.lang.Class.newInstanceImpl(Native Method)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at java.lang.Class.newInstance(Class.java:1409)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at android.app.Instrumentation.newActivity(Instrumentation.java:1040)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1777)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1893)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at android.app.ActivityThread.access$1500(ActivityThread.java:135)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1054)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at android.os.Handler.dispatchMessage(Handler.java:99)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at android.os.Looper.loop(Looper.java:150)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at android.app.ActivityThread.main(ActivityThread.java:4385)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at java.lang.reflect.Method.invokeNative(Native Method)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at java.lang.reflect.Method.invoke(Method.java:507)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:607)
02-02 13:39:03.161: E/AndroidRuntime(20716):    at dalvik.system.NativeStart.main(Native Method)

我還查看了AWS SDK NoClassDefFoundError:com.amazonaws.services.s3.AmazonS3Client

它還說我做了什么。

我如何解決它?

您可能需要按照我們博客中列出的步驟導出庫以便在Android應用程序中使用。

我使用以下方法解決了錯誤:

創建了一個libs文件夾(libs而不是lib)並將所有jar復制到該文件夾​​。它工作正常。 ADT自動將構建時依賴性放在libs文件夾內的jar中。它工作正常。

最初我的jar是在lib文件夾,我有明確的依賴它。所以它在編譯時工作,但這些庫沒有包裝在APK.This奇怪的我也讀到這個地方。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM