2

我正在尝试使用 Maven 部署一个基本的应用程序引擎 Web 应用程序。

作为部署过程的一部分,我需要通过 Web 浏览器进行身份验证。

我正在使用 2 个不同的谷歌帐户。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 

我发现有一个额外的参数可以传递给更新目标,它将完全按照我的需要做,但我不知道如何使用正确的语法来实际传递这个额外的参数。

应用引擎:更新

描述:创建或更新应用版本。
实现: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"

但是,这并不能解决问题,因为更新似乎忽略了该参数。

4

2 回答 2

6

我在 mvn appengine:update 命令之前使用此命令修复了错误:

rm ~/.appcfg_oauth2_tokens_java

于 2016-07-13T19:14:55.457 回答
1

我能够通过使用 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。

于 2016-04-02T07:07:11.393 回答