Google App Engine appcfg.py показывает сообщение справки для каждой команды - PullRequest
7 голосов
/ 09 апреля 2011

У меня есть приложение GWT, которое развернуто на GAE (Java).Я пытаюсь загрузить данные из хранилища данных App Engine с помощью appcfg.py.Я сделал все настройки в соответствии с http://ikaisays.com/2010/06/10/using-the-bulkloader-with-java-app-engine/.

GAE Python SDK версия 1.4.3
Python версия 2.5.4

appcfg.py находится в моем PATH.Когда я запускаю appcfg.py в командной строке, я получаю сообщение «помощь».Но проблема в том, что независимо от того, какую команду я использую, она всегда возвращает сообщение справки.Я не был в состоянии выполнить любую команду, используя appcfg.py.

Это не дает никакого конкретного сообщения об ошибке, независимо от того, какие аргументы я приводил.Мое приложение использует аутентификацию учетных записей Google, но я не думаю, что оно доходит до точки аутентификации.

Я могу без проблем использовать Java appcfg (для других действий, таких как откат).Но версия Python просто отказывается работать для всех команд.

Я пробовал разные форматы, такие как:

appcfg.py create_bulkloader_config --url=http://myappid.appspot.com/remote_api --application=myappid --filename=config.yml


appcfg.py create_bulkloader_config --filename=bulkloader.yaml --url=http://myappid.appspot.com/remote_api 


appcfg.py --filename=bulkloader.yaml --url=http://myappid.appspot.com/remote_api create_bulkloader_config 

Все выдают одно и то же справочное сообщение:

Использование: appcfg.py [options]

Действие должно иметь одно из следующих значений:
create_bulkloader_config: создать из запущенного приложения файл bulkloader.yaml.
cron_info: показать информацию о заданиях cron.
download_app: загрузить ранее загруженное приложение.Загрузка сущностей из хранилища данных.
help: вывод справки для определенного действия.
request_logs: запись журналов запросов в формате общего журнала Apache.
rollback: откат выполняемого обновления.
set_default_version: установкаверсия по умолчанию (обслуживающая).
update: создание или обновление версии приложения.
update_cron: обновление определений cron приложения.
update_dos: обновление определений dos приложения.
update_indexes: обновление индексов приложения.
update_queues: обновить определения очереди задач приложения.
upload_data: выгрузить записи данных в хранилище данных.
вакуум_индексы: DelНеиспользуемые индексы из приложения.
Используйте «help <action>» для подробного описания.

Опции:
-h, --help Показать справочное сообщение и выйти.
-q, --quiet Только ошибки печати. ​​
-v, --verbose Печать журналов уровня информации.
--noisy Печатать все журналы.
-s СЕРВЕР, --server = СЕРВЕР
...
...
...

Даже когда япопробуйте "appcfg.py help create_bulkloader_config" для подробного описания, оно все еще показывает мне ту же стандартную справку.

Я также пробовал на локальном сервере разработки, используя url http://127.0.0.1:8888/remote_api, но он все еще даетто же самое справочное сообщение.

Я совершенно не понимаю, в чем проблема.Я новичок в GWT и GAE, и любая помощь будет оценена.

Спасибо.

Ответы [ 2 ]

1 голос
/ 13 декабря 2011

Следующее исправление сработало для меня. Похоже, appcfg.py не нравится PYTHON27 и ВСЕГДА возвращает меню справки. Я исправил это, выполнив его с PYTHON25 и жестко запрограммировал все мои местоположения файлов:

C:\Python25-archive\python "C:\Program Files (x86)\Google\google_appengine\appcfg.py" rollback C:\scripts\myapp
0 голосов
/ 22 декабря 2012

Правильный способ - изменить переменные среды в Windows 7:

  1. Перейти к Свойства системы
  2. Перейти к Расширенные настройки системы
  3. Нажмите Переменные среды
  4. Добавить к Путь Переменные значения C:\Python27\
  5. Нажмите Ok и перезагрузите компьютер.(Да, это необходимо.)

Другой способ:

  1. Открыть Командная строка
  2. Найдите ваш python.exe файл.Например:

    C:\Python27>_

  3. Затем выполните команду python , которая выглядит следующим образом.

    python <appcfg_directory> download_app -A <your_app_id> -V <your_app_version> <output-dir>

Гдеравно C:\Program Files\Google\google_appengine\appcfg.py.(В зависимости от местоположения вашего файла)

Не забудьте поставить кавычки до и после <appcfg_directory>

...