mvn appengine: обновление не будет развернуто из-за ошибки разрешений
Я пытаюсь развернуть базовое веб-приложение движка приложений с помощью Maven.
Как часть процесса развертывания, я должен пройти аутентификацию через веб-браузер.
Я использую 2 разных аккаунта Google. 1 для дома. 1 для работы. Когда maven открыл вкладку браузера, чтобы попросить меня пройти аутентификацию, он выбрал неправильную учетную запись. Я этого не заметил и нажал кнопку "Разрешить".
Эта учетная запись не имеет правильных учетных данных, поэтому я получил ошибку "Отказано в доступе".
>mvn appengine:update
...
Beginning interaction for module default...
Apr 01, 2016 4:47:32 PM com.google.appengine.tools.admin.AbstractServerConnection send1
WARNING: Error posting to URL: https://appengine.google.com/api/appversion/getresourcelimits?app_id=maven-1268&version=1&
403 Forbidden
You do not have permission to modify this app (app_id=u's~maven-1268').
This is try #0
Apr 01, 2016 4:47:32 PM com.google.appengine.tools.admin.AbstractServerConnection send1
WARNING: Error posting to URL: https://appengine.google.com/api/appversion/getresourcelimits?app_id=maven-1268&version=1&
403 Forbidden
You do not have permission to modify this app (app_id=u's~maven-1268').
This is try #1
Apr 01, 2016 4:47:32 PM com.google.appengine.tools.admin.AbstractServerConnection send1
WARNING: Error posting to URL: https://appengine.google.com/api/appversion/getresourcelimits?app_id=maven-1268&version=1&
403 Forbidden
You do not have permission to modify this app (app_id=u's~maven-1268').
This is try #2
Apr 01, 2016 4:47:33 PM com.google.appengine.tools.admin.AbstractServerConnection send1
WARNING: Error posting to URL: https://appengine.google.com/api/appversion/getresourcelimits?app_id=maven-1268&version=1&
403 Forbidden
You do not have permission to modify this app (app_id=u's~maven-1268').
This is try #3
Так что я думаю, что "нет баджи", я просто запустлю его снова. Каким-то образом я заставлю maven выбрать правильную учетную запись (может быть, я временно выйду из неправильной учетной записи), и это решит проблему.
К сожалению, мне больше не предлагается аутентифицироваться. Он просто продолжает давать мне доступ к отклоненным ошибкам.
Я предполагаю, что где-то в файловой системе есть файл, который мне нужно удалить, чтобы снова получить запрос на авторизацию.
Кто-нибудь знает, где этот файл?
ОБНОВИТЬ
Я попытался полностью воссоздать свой проект с нуля в другом каталоге, и я все еще получаю ошибки отказа в доступе.
Запустив эту команду...
mvn help:describe -Dplugin=appengine -Ddetail
Я обнаружил, что есть дополнительный параметр, который я могу передать цели обновления, которая будет делать именно то, что мне нужно, но я не знаю, как использовать правильный синтаксис для фактической передачи этого дополнительного параметра.
AppEngine: обновление
Описание: создание или обновление версии приложения.
Реализация: com.google.appengine.appcfg.Update Язык: java
Перед выполнением этого mojo он вызовет: Phase: 'package'Доступные параметры:
additionalParams User property: appengine.additionalParams Additional parameters to pass through to AppCfg. noCookies User property: appengine.noCookies Do not save/load access credentials to/from disk.
Я думаю, что это может быть правильный синтаксис...
>mvn appengine:update -DadditionalParams="--noCookies"
Однако это НЕ решает проблему, поскольку обновление, похоже, игнорирует параметр.
2 ответа
Я исправил ошибку с помощью этой команды перед командой mvn appengine:update:
rm ~ /.appcfg_oauth2_tokens_java
Я смог решить эту проблему с помощью инструмента appcfg.sh вместо maven.
>appcfg.sh --no_cookies update /path/to/maven/project/first_project_second_try/guestbook/target/guestbook-1.0-SNAPSHOT
Я подозреваю, что это можно сделать и с maven, но я не уверен, как передать опцию "--no_cookies" в maven.