2012-05-04 2 views
1

Я пытаюсь извлечь маркер доступа и обновить маркер, используя документ, указанный here. Делая это, я столкнулся с проблемой:Google Drive Java Authentication

java.lang.NoSuchMethodError: com.google.api.client.json.JsonFactory.fromInputStream(Ljava/io/InputStream;Ljava/lang/Class;) 

Где я могу найти банку, содержащую этот класс и метод?

ответ

2

Google Drive Java client library основан на Google APIs Java client library. Обязательно загрузите его. Почтовый индекс содержит библиотеку и все ее зависимости.

Также убедитесь, что у вас нет противоречивых версий библиотеки Google Apis Client в вашем пути к compile/classpath, поскольку этот метод доступен только в более поздних версиях.

+0

Я попытался загрузить zip и использовать все библиотеки и его зависимости, но все же получил ту же ошибку. com.google.api.client.json.JsonFactory доступен в google-http-client-1.8.3-beta.jar, но ошибка показывает, что у него нет методаInputStream .... Есть ли другой файл jar, который содержит этот пакет? – VijayRaj

+0

Это может произойти, если у вас есть конфликтующая версия одной из зависимостей. Например, вы могли бы использовать другую версию google-http где-то на своем пути ... Также вы могли бы попытаться получить пример нашей Java, содержащий все инструкции: https://developers.google.com/drive/examples/ java – Nivco

+0

Потому что, если ваш компилятор не обнаруживает, что .fromInputStream отсутствует, это означает, что вы компилируете другую версию, на которой выполняется Java-код. Используете ли вы другие API Google в своем коде? они могут использовать старый google-http-клиент с устаревшими методами. – Nivco