如何使用GAE/J和AWS S3 JAR设置Android项目?

如何使用GAE/J和AWS S3 JAR设置Android项目?,android,google-app-engine,amazon-s3,google-cloud-endpoints,Android,Google App Engine,Amazon S3,Google Cloud Endpoints,我今天一直在处理这个问题,但仍然找不到任何解决办法。我有一个应用引擎连接的Android项目,它使用AmazonS3Client调用GAE数据存储(通过端点)和AWS S3。我必须将一个照片文件从相机上传到S3,并将其相应的元数据上传到数据存储实体(photo.java)。不幸的是,尽管我认为我的代码是正确的,但我无法运行该示例,因为有多个文件定义了一个类,该类可能是aws-android-sdk-X.X.X-debug.jar和其中一个GAE客户端jar之间的冲突 这是我的控制台日志: [20

我今天一直在处理这个问题,但仍然找不到任何解决办法。我有一个应用引擎连接的Android项目,它使用AmazonS3Client调用GAE数据存储(通过端点)和AWS S3。我必须将一个照片文件从相机上传到S3,并将其相应的元数据上传到数据存储实体(photo.java)。不幸的是,尽管我认为我的代码是正确的,但我无法运行该示例,因为有多个文件定义了一个类,该类可能是aws-android-sdk-X.X.X-debug.jar和其中一个GAE客户端jar之间的冲突

这是我的控制台日志:

[2013-10-06 20:15:15 - Dex Loader] Unable to execute dex: Multiple dex files define     Lorg/codehaus/jackson/Base64Variant;
[2013-10-06 20:15:15 - moodstream_final] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lorg/codehaus/jackson/Base64Variant;    
在这种情况下我能做什么?我不想搞乱从GAE导入的默认JAR,我不知道从aws libs导入什么来避免这种冲突

编辑

我还尝试只导入aws-android-sdk-X.X.X-s3.jar,而不是整个调试jar。该程序现在正在运行,但在创建AmazonS3Client时,出现以下错误:

10-07 02:07:06.286: E/AndroidRuntime(1917): FATAL EXCEPTION: main
10-07 02:07:06.286: E/AndroidRuntime(1917): java.lang.NoClassDefFoundError: com.amazonaws.services.s3.AmazonS3Client
10-07 02:07:06.286: E/AndroidRuntime(1917):     at com.moodstream.activity.CreatePhotoActivity.<init>(CreatePhotoActivity.java:42)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at java.lang.Class.newInstanceImpl(Native Method)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at java.lang.Class.newInstance(Class.java:1319)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at android.app.Instrumentation.newActivity(Instrumentation.java:1054)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2097)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at android.app.ActivityThread.access$600(ActivityThread.java:141)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at android.os.Handler.dispatchMessage(Handler.java:99)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at android.os.Looper.loop(Looper.java:137)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at android.app.ActivityThread.main(ActivityThread.java:5041)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at java.lang.reflect.Method.invokeNative(Native Method)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at java.lang.reflect.Method.invoke(Method.java:511)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
10-07 02:07:06.286: E/AndroidRuntime(1917):     at dalvik.system.NativeStart.main(Native Method)
10-07 02:07:06.286:E/AndroidRuntime(1917):致命异常:main
10-07 02:07:06.286:E/AndroidRuntime(1917):java.lang.NoClassDefFoundError:com.amazonaws.services.s3.AmazonS3Client
10-07 02:07:06.286:E/AndroidRuntime(1917):位于com.moodstream.activity.CreatePhotoActivity。(CreatePhotoActivity.java:42)
10-07 02:07:06.286:E/AndroidRuntime(1917):位于java.lang.Class.newInstanceImpl(本机方法)
10-07 02:07:06.286:E/AndroidRuntime(1917):位于java.lang.Class.newInstance(Class.java:1319)
10-07 02:07:06.286:E/AndroidRuntime(1917):在android.app.Instrumentation.newActivity(Instrumentation.java:1054)上
10-07 02:07:06.286:E/AndroidRuntime(1917):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2097)
10-07 02:07:06.286:E/AndroidRuntime(1917):在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
10-07 02:07:06.286:E/AndroidRuntime(1917):在android.app.ActivityThread.access$600(ActivityThread.java:141)
10-07 02:07:06.286:E/AndroidRuntime(1917):在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
10-07 02:07:06.286:E/AndroidRuntime(1917):在android.os.Handler.dispatchMessage(Handler.java:99)上
10-07 02:07:06.286:E/AndroidRuntime(1917):在android.os.Looper.loop(Looper.java:137)
10-07 02:07:06.286:E/AndroidRuntime(1917):在android.app.ActivityThread.main(ActivityThread.java:5041)
10-07 02:07:06.286:E/AndroidRuntime(1917):位于java.lang.reflect.Method.Invokenactive(本机方法)
10-07 02:07:06.286:E/AndroidRuntime(1917):位于java.lang.reflect.Method.invoke(Method.java:511)
10-07 02:07:06.286:E/AndroidRuntime(1917):位于com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
10-07 02:07:06.286:E/AndroidRuntime(1917):位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
10-07 02:07:06.286:E/AndroidRuntime(1917):在dalvik.system.NativeStart.main(本机方法)

我不明白,因为AmazonS3Client也在s3 jar中。所以,还是卡住了:S。

问题解决了!!我设法修复了从libs文件夹中删除jackson-core-asl-1.9.11.jar的双文件冲突