Appengine подключен проект андроида мертв по прибытии

Я следую учебнику к письму; ну, на самом деле это довольно простой, так что там действительно ничего нет. Но когда я создал проект, часть android не компилируется. Eclipse жалуется на невозможность разрешения импорта. Например, есть строка чтения под com.myapp.deviceinfoendpoint частью

import com.myapp.deviceinfoendpoint.Deviceinfoendpoint;
import com.myapp.deviceinfoendpoint.Deviceinfoendpoint.Builder;
import com.myapp.deviceinfoendpoint.model.DeviceInfo;

Кто-нибудь знает, как это исправить? Возможно, это проблема пути сборки, но нет инструкций о том, как установить путь сборки.

Я использую mac osx mountain lion и eclipse juno

Также есть красные крестики в следующих папках:

  • конечной точка-LIBS/libdeviceinfoendpoint-v1/deviceinfoendpoint/deviceinfoendpoint-V1-генерируемый источник

  • /MyApp/конечная точка-LIBS/libmessageEndpoint-v1/messageEndpoint/messageendpoint-V1-генерируемый источник

  • /myapp/endpoint-libs (и вспомогательные папки)

и следующие папки:

  • GCMIntentService.java

  • RegisterActivity.java

Ответ 1

Да, это происходит и со мной. Причина этого в том, что некоторые из них (не уверены, что его Eclipse или плагин GAE) классы в endpoint-libs/libdeviceinfoendpoint-v1/deviceinfoendpoint/deviceinfoendpoint-v1-generated-source

перемещаются из ожидаемой структуры:

./deviceinfoendpoint-v1-generated-source
    |- com
       |-myapp
           |- deviceinfoendpoint
               |- Deviceinfoendpoint.java

для недопустимой структуры:

./deviceinfoendpoint-v1-generated-source
    |- com
       |-google
           |- api
               |- services
                   |- com.myapp.deviceinfoendpoint
                       |- Deviceinfoendpoint.java

В теории это не должно происходить. Но, хорошо!: -)

Попробуйте выполнить повторную настройку генерации клиентской библиотеки или попытайтесь выполнить ее вручную.

[Обновление: повторное создание клиентской библиотеки не поможет. Либо попробуйте режим командной строки.

Или немного трудно сделать это вручную

  • перемещение всего содержимого пакета com.google.api.services/com.myapp/ на com.myapp/.
  • Поиск заменяет все события "com.google.api.services". во всех сгенерированных исходных файлах Java.

Я пробовал это, и это сработало. ]


P.S: вы можете знать, что конечные точки Google в настоящее время испытывают некоторые сбои. Возможно, вам придется подождать некоторое время, прежде чем вы сможете проверить его. Следите за этой проблемой: https://code.google.com/p/googleappengine/issues/detail?id=9214

Обновление. Это может помочь обратиться к этой проблеме, о которой сообщается в Google: https://code.google.com/p/google-plugin-for-eclipse/issues/detail?id=117

Ответ 2

Самое простое решение - создать проект в местоположении по умолчанию в мастере. Тогда это просто работает (с момента написания, но оно не использовалось). Вы можете перемещать его туда, где хотите в этот момент.

enter image description here

Вы можете создать его в другой папке, но тогда вам придется:

  • Отредактируйте записи модуляPath в файлах descriptor.json, чтобы удалить дополнительный путь (в моем случае изменился com/test на com/).
  • Удалите папки с сгенерированными исходными файлами в пути сборки java.
  • Добавьте правильные папки сгенерированных источников в путь сборки java.

Что бессмысленно, но включено здесь для полноты. Я признаю, что не знаю, что я делаю в файлах descriptor.json, но это устранило проблему для меня.