Добавить Cloud SDK в Eclipse с помощью GPE

Я пытаюсь использовать Cloud Datastore с низкоуровневым API на Eclipse Mars с плагином Google, но я понял, что мне не хватает некоторых библиотек, используемых в руководствах Google:

//I was using this
com.google.appengine.api.datastore.Entity;
Entity a = Entity.builder(..) // method does not exist I presume
//and the tutorials use this instead
com.google.cloud.datastore.Entity;

Итак, найдя это руководство: https://developers.google.com/eclipse/docs/using_sdks, я установил Google Cloud SDK для Mac OS X (google-cloud-sdk-130.0.0-darwin-x86_64.tar), но когда я пытаюсь добавить SDK, я получаю сообщение об ошибке: Не удалось инициализировать SDK App Engine на /Users/../google-cloud-sdk 2

Это каталог, в котором я открыл загруженный файл и запустил bin / gcloud init, поэтому я предполагаю, что sdk должен быть установлен там или нет? Как мне найти к нему путь? Стоит ли попробовать другую версию? У меня ужасно с терминалом ..

А вы можете объяснить разницу между классами? Я думал, что хранилище данных уже находится в облаке, когда я развертываю его в движке приложения. Есть ли два типа хранилища данных?


person thehorseisbrown    schedule 18.10.2016    source источник


Ответы (1)


Старый GPE (подключаемый модуль Google для Eclipse) основан на Java SDK App Engine (appcfg), а не на Cloud SDK (gcloud). Страница, которую вы цитируете, была написана до того, как появился Cloud SDK. Мне придется обновить его, чтобы было немного понятнее.

Новый подключаемый модуль Eclipse с открытым исходным кодом на основе GCloud находится в разработке. Вы можете попробовать его на этой ранней стадии, если хотите, но будьте готовы сообщать об ошибках.

Из вашего вопроса я заметил еще кое-что: «Entity» - это довольно общее имя, которое встречается во многих API, и не все классы Entity - одно и то же. В этом случае, хотя и com.google.appengine.api.datastore.Entity, и com.google.cloud.datastore.Entity относятся к базовому хранилищу больших двоичных объектов в App Engine, Cloud Datastore, база данных NoSQL. Тем не мение:

  • com.google.appengine.api.datastore используется сервлетами и другими программами, работающими в Google App Engine, для связи с Cloud Datastore.

  • com.google.cloud.datastore используется программами, которые работают на ваших компьютерах, не поддерживающих App Engine, для связи с Cloud Datastore с использованием скрытого протокола HTTP.

То есть вы используете com.google.appengine.api.datastore только в том случае, если вы пишете приложение App Engine, которое должно хранить данные. Вы можете использовать com.google.cloud.datastore для любого приложения, независимо от того, работает оно на App Engine или нет. Они могут читать и писать из одной и той же базы данных.

person Elliotte Rusty Harold    schedule 19.10.2016