google-api-java-client NetHttpTransport вызывает NoClassDefFoundError - PullRequest
6 голосов
/ 24 мая 2011

Я только начал изучать google-api-java-client на Android. Добавлены следующие 3 библиотеки в проект. (Я не использую Maven.)

  • Google-апи-клиент-1.4.1-beta.jar
  • Google-API-клиент-googleapis-1.4.1-beta.jar
  • Google-API-клиент-googleapis-расширения-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)

Что с этим не так?

1 Ответ

10 голосов
/ 24 мая 2011

Как вы можете видеть из ошибки, у вас отсутствует класс, полученный из Guava .Вы можете либо загрузить библиотеку guava и добавить ее в свой путь к классам, либо использовать maven (или Ivy) для управления своими зависимостями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...