Как выполнить команду 'appcfg rollback'?
При загрузке проекта произошел сбой сети, и мне пришлось остановиться, когда процесс загрузки был завершен только на 31%. Теперь, когда я нажимаю, чтобы развернуть приложение в движок Google, выдается следующее сообщение:
com.google.appengine.tools.admin.HttpIoException: Error posting to URL:
https://appengine.google.com/api/appversion/create?app_id=programworks&version=1&
409 Conflict
Another transaction by user suhailgupta03 is already in progress for app:
s~programworks, version: 1. That user can undo the transaction with
"appcfg rollback".
Unable to update app: Error posting to URL: https://appengine.google.com/api/appversion/create?app_id=programworks&version=1&
409 Conflict
Another transaction by user suhailgupta03 is already in progress for app:
s~programworks, version: 1. That user can undo the transaction with "appcfg rollback".
Я открываю приглашение оболочки и набираю там appcfg rollback
, но получаю сообщение о том, что эта команда не найдена. Я установил движок Google в качестве плагина для netbeans.
Путь, где я сохранил банки движка Google: /home/non-admin/appengine-java-sdk-1.6.6/lib/
Скажите, что мне делать, чтобы отменить предыдущий процесс? Мне очень нужно загрузить файл войны.!
Ответы
Ответ 1
Вы хотите appcfg.sh rollback
(который находится в path_to_your_app_engine_sdk/bin/
). appcfg
поставляется в разных вариантах для каждого типа среды выполнения (Python, Java, Go), поэтому предлагаемая команда является немного общей.
Если по какой-либо причине у вас нет простого доступа ко всей военной директории вашего проекта (если, например, ваша IDE предоставляет только файл .war), вы можете сделать следующее:
- Создайте каталог с именем
war
.
- В папке войны создайте другой каталог и назовите его
WEB-INF
.
- В папке
WEB-INF
отпустите два xml файла, а именно web.xml
и appengine-web.xml
. Они должны иметь содержимое ваших развернутых файлов web.xml
и appengine-web.xml
соответственно.
Затем запустите следующую команду оболочки (предполагается, что вы выполняете ее из каталога bin
SDK App Engine Java):
[[email protected] bin]$ ./appcfg.sh rollback /home/non-admin/NetBeansProjects/PersonalSite/web/war
Если вы используете инструменты Go appengine, вам нужно запустить:
$ cd [your go_appengine directory]
$ ./appcfg.py rollback [your app directory with app.yaml in it]
Ответ 2
Если вы используете окна, выполните те же действия, что и выше, и запустите команду в командной строке DOS.
C:\затмение-Jee-Гелиос-win32\затмение\Plugins\com.google.appengine.eclipse.sdkbund
le_1.7.3\appengine-java-sdk-1.7.3\bin > appcfg.cmd откат "C:\home\myweb\war"
Ответ 3
Ниже приведен еще один простой способ:
- изменить номер версии в app.yaml...
- затем разверните новую версию,
- и, наконец, удалить старую версию с помощью веб-формы движка Google
Edit:
ответить на вопрос dg99:
код версии, который вам нужно изменить, зависит от вас (это версия вашего приложения)
Ответ 4
Это работает для меня!! (Win OS)
C:\eclipse-jee-helios-win32\eclipse\plugins\com.google.appengine.eclipse.sdkbund le_1.7.3\appengine-java-sdk-1.7.3\bin > appcfg.cmd rollback C:\home\myweb\war
Ответ 5
Если вы используете eclipse и maven build envrioment,
возможно, вы загружаете приложение командой maven, appengine: update, правильно?
Тогда, когда у вас возникла такая проблема "409 Conflict".
Вы можете использовать команду maven в проекте eclipse- > project- > run as- > maven build...- > "AppEngine: Откат"
Попробуйте это. Я решил проблему таким образом
Ответ 6
После попытки отката на время без каких-либо успехов (я был запрошен для пользователя /pass бесконечно), я думал, что это может быть из-за моей двухфазной/факториальной аутентификации,
Итак, следующий способ решил все:
-
откройте командную строку (cmd.exe) в D:\Java\eclipse\plugins\com.google.appengine.eclipse.sdkbundle_1.8.3\appengine-java-sdk-1.8.3\bin>
(или найдите местоположение вашего appcfg.cmd
где-то еще)
-
введите appcfg.cmd --oauth2 rollback D:/Java/workspace/my_app/war
-
Затем мне предложили токен oauth2 в моем браузере, скопировали и вернулись к cmd, чем вставьте
-
Что это! Deploy to App Engine снова работает!
Ответ 7
Используйте это для бэкэндов, разработанных в Android Studio:
cd project_path/project_name/module_name/src/main
appcfg.sh rollback webapp
Ответ 8
Для меня следующее работало отлично от каталога разработки, где было установлено мое приложение app.yaml.
appcfg.py rollback .
Я использую Python SDK, хотя, может быть, отличается для Java, так как там <app-directory>
называется <war-location>
.
Ответ 9
Ниже приведены шаги, которые необходимо выполнить для отката в Windows 7 с помощью командной строки:
1) сначала установите переменную среды для python (так что команда "python" принимается командной строкой).
2), то введите: "python" give_space "путь к файлу appcfg.py" give_space "откат" give_space "в ваш проект". (Заметьте, что вы должны указать свои пути в кавычках).
Ответ 10
Когда вы используете Maven, тогда работает команда appengine:rollback
.
Это работает, даже если это проект Eclipse Maven.
Чтобы вернуться в Eclipse Maven, выполните этот процесс -
Run → Build → Goals (appengine: rollback) → Apply → Run
Ответ 11
Может подтвердить, что некоторые из ответов разъяснены выше.
Если вы используете mvn appengine:update
для развертывания, вы можете использовать mvn appengine:rollback
для выполнения отката.