【问题标题】:Unable to download google app engine standard project source in Windows 10无法在 Windows 10 中下载谷歌应用引擎标准项目源
【发布时间】:2019-07-10 08:10:35
【问题描述】:

我正在尝试下载我现有的 google appengine 项目之一的最新版本,我厌倦了看到错误!我在 google sdk python 2.7 目录中运行 appcfg.py 命令。这是我跑的。

python "C:\DEV_Tools\Google\Cloud SDK\google-cloud-sdk\platform\google_appengine\appcfg.py" download_app -A <project> -V <version> C:\DEV_Tools\Dump\

输出:

Traceback (most recent call last):
  File "C:\DEV_Tools\Google\Cloud SDK\google-cloud-sdk\platform\google_appengine\appcfg.py", line 133, in <module>
    run_file(__file__, globals())
  File "C:\DEV_Tools\Google\Cloud SDK\google-cloud-sdk\platform\google_appengine\appcfg.py", line 129, in run_file
    execfile(_PATHS.script_file(script_name), globals_)
  File "C:\DEV_Tools\Google\Cloud SDK\google-cloud-sdk\platform\google_appengine\google\appengine\tools\appcfg.py", line 66, in <module>
    from google.appengine.api import appinfo
  File "C:\DEV_Tools\Google\Cloud SDK\google-cloud-sdk\platform\google_appengine\google\appengine\api\appinfo.py", line 54, in <module>
    from google.appengine.api import validation
  File "C:\DEV_Tools\Google\Cloud SDK\google-cloud-sdk\platform\google_appengine\google\appengine\api\validation.py", line 46, in <module>
    from google.appengine._internal.ruamel import yaml
  File "C:\DEV_Tools\Google\Cloud SDK\google-cloud-sdk\platform\google_appengine\google\appengine\_internal\ruamel\yaml\__init__.py", line 85, in <module>
    from google.appengine._internal.ruamel.yaml.main import *  # NOQA
  File "C:\DEV_Tools\Google\Cloud SDK\google-cloud-sdk\platform\google_appengine\google\appengine\_internal\ruamel\yaml\main.py", line 19, in <module>
    from google.appengine._internal.ruamel.yaml.loader import BaseLoader, SafeLoader, Loader, RoundTripLoader  # NOQA
  File "C:\DEV_Tools\Google\Cloud SDK\google-cloud-sdk\platform\google_appengine\google\appengine\_internal\ruamel\yaml\loader.py", line 10, in <module>
    from google.appengine._internal.ruamel.yaml.constructor import (
  File "C:\DEV_Tools\Google\Cloud SDK\google-cloud-sdk\platform\google_appengine\google\appengine\_internal\ruamel\yaml\constructor.py", line 21, in <module>
    from google.appengine._internal.ruamel.yaml.comments import *                               # NOQA
  File "C:\DEV_Tools\Google\Cloud SDK\google-cloud-sdk\platform\google_appengine\google\appengine\_internal\ruamel\yaml\comments.py", line 642, in <module>
    class CommentedMap(MutableMapping, ordereddict, CommentedBase):
  File "C:\DEV_Tools\Google\Python27\lib\abc.py", line 86, in __new__
    cls = super(ABCMeta, mcls).__new__(mcls, name, bases, namespace)
TypeError: Error when calling the metaclass bases
    Cannot create a consistent method resolution
order (MRO) for bases CommentedBase, MutableMapping, ordereddict

【问题讨论】:

    标签: python google-app-engine google-app-engine-python


    【解决方案1】:

    系统上安装的文件可能存在问题。我试图重现该问题,但出现了不同类型的错误:

    Traceback(最近一次调用最后一次):文件“C:\Program Files (x86)\Google\google_appengine\appcfg.py",第 133 行,在 run_file(file, globals()) File "C:\Program Files (x86)\Google\google_appengine\appcfg.py",第 129 行,在 run_file 中 execfile(_PATHS.script_file(script_name), globals_) NameError: name 'execfile' 没有定义

    这是由于安装文件损坏。我已经完全重新安装了 Google App Engine Python SDK,它对我有用。请尝试以下步骤,因为它也可能对您有所帮助:

    从 GAE 下载源代码:

    • 它仅适用于 App Engine 标准应用
    • 您可以在选择特定服务版本的 Google Cloud Console 中进行确认。下拉菜单 Tools 不会为 Flex 应用程序提供选项 Source,而只会为 Standard 应用程序提供选项
    • 您应该安装了Python version 2.7
    • 你应该有最新版本的App Engine SDK for Python

    步骤:

    1. 转到 控制面板 > 程序和功能,然后卸载您的 Google App Engine SDK。
    2. 转到安装 GAE 的路径并删除 google_appengine 文件夹。在你的场合是C:\DEV_Tools\Google\Cloud SDK\google-cloud-sdk\platform
    3. 安装Python 2.7from here
    4. Quickstart for Windows 安装和初始化 Google Cloud SDK
    5. 以管理员身份运行 Google Cloud SDK 并执行$ gcloud init
    6. 然后在gcloud config set doc的基础上执行$ gcloud config set project [PROJECT_ID]
    7. 执行$ gcloud components install app-engine-python基于Download the Cloud SDK安装GAE Python
    8. 执行$ gcloud components install app-engine-python-extras 安装附加功能。
    9. 执行$ gcloud components update更新组件。
    10. Download and install the original App Engine SDK for Python 中所述,安装适用于 Python 的 GAE SDK
    11. 重新启动计算机
    12. Administrator 运行 Google Cloud SDK
    13. 执行命令$ gcloud info 验证是否设置了正确的项目和正确的用户帐户。
    14. 如果未正确设置,请执行 $ gcloud init 并正确设置以验证 SDK。
    15. 执行appcfg.py -A [PROJECT_ID] -V [VERSION_NAME] download_app C:\PATH\TO\SAVE\SOURCE_CODE 确保版本引用的是 GAE STANDARD 应用
    16. 它会将您重定向到浏览器页面,以便您可以使用设置 SDK 进行身份验证的相同帐户登录。

    你应该看到:

    Authentication successful.
    04:37 PM Fetching files...
    04:37 PM [1/16] WEB-INF/lib/_ah_compiled_jsps-0000.jar
    04:37 PM [2/16] WEB-INF/lib/org.apache.taglibs.taglibs-standard-impl-1.2.5.jar
    04:37 PM [3/16] WEB-INF/min-quickstart-web.xml
    04:37 PM [4/16] WEB-INF/appengine-generated/app.yaml
    04:37 PM [5/16] WEB-INF/lib/org.eclipse.jdt.ecj-3.14.0.jar
    04:37 PM [6/16] WEB-INF/web.xml
    04:37 PM [7/16] WEB-INF/lib/org.mortbay.jasper.apache-el-8.5.24.2.jar
    04:37 PM [8/16] WEB-INF/lib/org.mortbay.jasper.apache-jsp-8.5.24.2.jar
    04:37 PM [9/16] source-context.json
    04:37 PM [10/16] WEB-INF/quickstart-web.xml
    04:38 PM [11/16] WEB-INF/classes/source-context.json
    04:38 PM [12/16] WEB-INF/lib/org.apache.taglibs.taglibs-standard-spec-1.2.5.jar
    04:38 PM [13/16] WEB-INF/appengine-web.xml
    04:38 PM [14/16] WEB-INF/lib/org.eclipse.jetty.apache-jsp-9.4.14.v20181114-nolog
    

    否则如果是 GAE Flex 你会看到这个错误:

    54319 download_app C:\PATH\TO\SAVE\SOURCE_CODE 04:38 PM Host:
    appengine.google.com 04:38 PM Fetching file list... Error 400: ---
    begin server output --- Major version "[VERSION_NAME]" does not exist.
    --- end server output ---
    

    【讨论】:

    • 我通常依赖 ubuntu 来处理这些东西。但当时我不得不使用窗户。谢谢你的提示。我忘记标记了。抱歉耽搁了。
    猜你喜欢
    • 2011-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-08
    • 1970-01-01
    • 2019-12-24
    • 1970-01-01
    • 2019-12-12
    相关资源
    最近更新 更多