Как использовать appcfg.py для проектов google-app-engine, созданных с помощью плагина google eclipse?
Я создал java-проект google-app-engine в Eclipse, используя плагин Google Eclipse. Моя предыдущая попытка развертывания не удалась. Теперь, когда я повторяю, я получаю следующее сообщение:
Невозможно обновить приложение: Ошибка отправки на URL: http://appengine.google.com/api/appversion/create?app_id=mybdaywisherversion=1
409 конфликт
Еще одна транзакция для этого пользователя уже выполняется для этого приложения и основной версии. Этот пользователь может отменить транзакцию командой appcfg.py "rollback".
Теперь я всегда использовал функции google-app-engine только внутри Eclipse и не знаю, как запустить команду appcfg.py.
Невозможно получить большую помощь от документации, доступной через Интернет. Единственное, что я мог разглядеть, было для mac (я нахожусь на mac), команда, которую нужно использовать, - appcfg.sh. Внутри Eclipse я посмотрел, где App-Engine SDK находится на моей машине и отправился в это место.
Даже нашел appcfg.sh. Но когда я пытаюсь запустить его, он сообщает только об ошибке "команда не найдена". Пробовал различные альтернативы для запуска (например, попробовал запустить его с помощью sudo, попытался запустить его как. /appcfg.sh, перейдя к его расположению), но без успеха
Может кто-нибудь, пожалуйста, скажите мне, что мне нужно будет выполнить команду apcfg?
Ответы
Ответ 1
Улучшена перспектива проблемы.
Документирование проблемы здесь для использования on-lookers:
Я использовал Google плагин для Eclipse для проекта Google App Engine. Попытка развернуть приложение на сервере приложений не удалась из-за сетевых проблем. Последующие попытки потерпели неудачу, потому что предыдущая попытка создала какой-то замок и эту транзакцию пришлось отменить. Плагин не предоставляет никакого способа сделать это. Для отката нужно использовать программу appcfg по командной строке. http://code.google.com/appengine/docs/java/tools/eclipse.html содержит сведения. Проблема, с которой я столкнулся, происходила из-за разрешений на уровне ОС на appcfg.sh. Ga ve разрешает самостоятельно использовать chmod и может заставить его работать.
Ответ 2
В результате ошибки внутреннего сервера во время развертывания приложения,
Теперь я остаюсь с ожидающей транзакцией, что мне нужно откат
прежде чем я смогу снова установить.
Создание промежуточного каталога Сканирование файлов jsp. Сканирование файлов на локальном диске. Инициирование обновления. java.io.IOException: сообщение об ошибке в URL: 409 Конфликт Еще одна транзакция пользователя уже выполняется для этого приложения и версия. Этот пользователь может отменить транзакцию с помощью appcfg.py "rollback" команда.
вот как я это сделал (все из командной строки), которое немного проще
метод, который получил тот же эффект.....
C:\Documents and Settings\Amit\Мои документы \newproject > "C:\Program
Файлы\затмение\Plugins\com.google.appengine.eclipse.sdkbundle_1.2.5.v200909021031\AppEngine-ява-СДК-1.2.5\Bin\AppCfg"
откат войны
Чтение данных конфигурации приложения...
2009-09-17 20: 47: 35.859:: INFO: Вход в STDERR через org.mortbay.log.StdErrLog
Начало взаимодействия сервера для idebanet...
0% Откат обновления.
Успех.
Очистка временных файлов...
C:\Documents and Settings\Amit\Мои документы \newproject >
Предоставлено: JOHN
Ответ 3
Я не думаю, что эти ответы были полезными.
-
с использованием строки commmand cd в каталог приложения. для меня это
cd/Sites/appengine_myapp
-
Теперь вы это сделали.
appcfg.py --no_cookies [email protected] --passin rollback./
-
Вам будет предложено ввести пароль.
Ответ 4
Попробуйте запустить appcfg.py с возможностью отката. См. docs:
appcfg.py [опции] откат
Отменяет частично завершенное обновление для данного приложения. Вы может использовать это, если обновление было прерывается, и команда сообщая, что приложение не может обновляться из-за блокировки.
Ответ 5
для пользователя mac/linux:
1.cd/ "sdkdirectory" /bin
2. chmod + x appcfg.sh
3../appcfg.sh -s appengine.google.com -e [email protected] rollback/Users/ "...." /workspace/yourapp/war
Ответ 6
Когда вы используете Linux, попробуйте решение, размещенное по этой ссылке:
http://www.patternizando.com.br/2011/04/another-transaction-that-user-can-undo-the-transaction-with-appcfg-pys-rollback-command-gae/
Ответ 7
для развертывания вашего приложения с помощью командной строки выполните следующие действия:
cd "/Library/Google/google_appengine"
./appcfg.py update "path-to-project/src"
вам будет предложено ввести адрес электронной почты и пароль.
Ответ 8
У меня возникли проблемы с запуском этих appcfg, предоставленных Eclipse. Мне пришлось установить Python + App Engine для python и воспользоваться функциями appcfg.py. Это было на Windows, хотя.