google-api-java-client NetHttpTransport causes NoClassDefFoundError

怎甘沉沦 提交于 2019-11-30 05:13:49

问题


I just started studying google-api-java-client on Android. Added next 3 libraries into project. (I don't use Maven.)

  • google-api-client-1.4.1-beta.jar
  • google-api-client-googleapis-1.4.1-beta.jar
  • google-api-client-googleapis-extensions-andr

And picked sample code to work with. In the sample, it used GoogleTransport which seems not available now.

HttpTransport transport = GoogleTransport.create();

So I changed it to NetHttpTransport(), found on the web.

import com.google.api.client.http.javanet.NetHttpTransport;
...
   HttpTransport transport = new NetHttpTransport();

But, I got exception.

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)

What is wrong with this?


回答1:


As you can see in the error, you have a class missing, coming from Guava. You can either download the guava lib and add it in your classpath, or use maven (or Ivy) to manage your dependencies for you.



来源:https://stackoverflow.com/questions/6107062/google-api-java-client-nethttptransport-causes-noclassdeffounderror

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!