google-api-java-client NetHttpTransport导致NoClassDefFoundError

问题描述

|| 我刚刚开始在Android上学习google-api-java-client。 在项目中添加了下3个库。 (我不使用Maven。) google-api-client-1.4.1-beta.jar google-api-client-googleapis-1.4.1-beta.jar google-api-client-googleapis-extensions-andr 并选择要使用的示例代码。在示例中,它使用了GoogleTransport,但现在似乎无法使用。
HttpTransport transport = GoogleTransport.create();
因此,我将其更改为在网络上找到的NetHttpTransport()。
import com.google.api.client.http.javanet.NetHttpTransport;
...
   HttpTransport transport = new NetHttpTransport();
但是,我有例外。
05-24 15:54:33.310: ERROR/AndroidRuntime(4586): java.lang.NoClassDefFoundError: com.google.common.base.Preconditions
05-24 15:54:33.310: ERROR/AndroidRuntime(4586):     at com.google.api.client.util.ClassInfo.<init>(ClassInfo.java:324)
05-24 15:54:33.310: ERROR/AndroidRuntime(4586):     at com.google.api.client.util.ClassInfo.of(ClassInfo.java:77)
05-24 15:54:33.310: ERROR/AndroidRuntime(4586):     at com.google.api.client.util.GenericData.<init>(GenericData.java:44)
05-24 15:54:33.310: ERROR/AndroidRuntime(4586):     at com.google.api.client.http.HttpHeaders.<init>(HttpHeaders.java:37)
05-24 15:54:33.310: ERROR/AndroidRuntime(4586):     at com.google.api.client.http.HttpTransport.<init>(HttpTransport.java:82)
05-24 15:54:33.310: ERROR/AndroidRuntime(4586):     at com.google.api.client.http.javanet.NetHttpTransport.<init>(NetHttpTransport.java:35)
05-24 15:54:33.310: ERROR/AndroidRuntime(4586):     at net.DailyTimer.test.MainActivity.onCreate(MainActivity.java:290)
这有什么问题?     

解决方法

正如您在错误中看到的那样,您缺少一类来自Guava的类。您可以下载guava库并将其添加到类路径中,也可以使用maven(或Ivy)为您管理依赖项。