Google App Engine 启动器 Python 路径

Google App Engine Launcher Python Path

当我安装 Google App Engine SDK 和 运行 启动器时,它要求我配置 python 位置:


当我打开 Preferences 时,它会询问 python 可执行文件的路径:


我应该插入哪条路径,有什么区别:

根据这个 QA,pythonw 似乎更可取: https://code.google.com/p/googleappengine/issues/detail?id=11246

这是类似的问答: pythonw.exe or python.exe?

python.exe is a console (terminal) application for launching CLI-type scripts.

pythonw.exe is a GUI app for launching GUI/no-UI-at-all scripts.

错误消息显示 python=None。检查您是否可以从 cmd python -V 执行以确认您的 python 构建可在整个系统中访问。 GAE一般可以自动找到你的python安装,并在安装前确认你的python路径。

如果有帮助,请尝试 this tutorial

通过查看文档:https://docs.python.org/2/using/windows.html#executing-scripts

Pythonw 基本上压制了控制台window。我不认为你需要一个使用应用程序引擎的人,所以,pythonw.exe 是我最好的猜测。

看起来 Google App Engine 找不到您的 python 安装。它通过检查PATH环境变量来查找Python,所以最好使用它。

简短的回答是使用 C:\Python27\pythonw.exe。我刚刚安装了最新的 "GoogleAppEngine-1.9.33.msi",在我 运行 "Google App Engine launcher" (C:\Program Files (x86)\Google\google_appengine\launcher\GoogleAppEngineLauncher.exe) 之后,在 "Edit -> Preferences" 中我看到了“C:\Python35\pythonw.exe”。 (这是因为我的 Path 环境变量设置中 Python 2.7 文件夹之前有 Python 3.5 文件夹。)但关键是 App Engine 启动器(或安装程序)选择了 pythonw.exe 超过 python.exe 个。

但作为更好的解决方案,我建议您设置 Path 环境变量,这将防止以后出现其他类似问题。

要在 Path 上设置 Python,如果未设置:

  1. 右键单击 "Computer"(或 "My Computer")并选择 "System Properties";
  2. 切换到"Advanced"标签;
  3. 按"Environment variables"按钮;
  4. 双击下方系统变量列表中的"Path"变量;
  5. 在打开的window中,在"Values"行的开头加上C:\Python27\;C:\Python27\Scripts;。确保你不会不小心删除那里的任何东西!
  6. 在此 window 中按 "OK" 并在 "Environment variables" window 中按 "OK" 就可以了。

或者在第 5 项中,您可能希望使用上方列表中的用户 PATH。我会按照我的描述为所有用户设置 Python。

现在通过 "Google App Engine Launcher" 启动 Google App Engine 并查看 "Edit -> Preferences" 中是否有 "Default if not set: C:\Python27\pythonw.exe" 或 "Default if not set: C:\Python27\python.exe" 写在 "Python path"。如果仍然没有任何相似之处,那么检查 PATH 的不是启动器,而是安装程序。那么现在是时候卸载 "Google App Engine" 并重新安装了。在此之后,一切都应该按预期工作。 (顺便说一句,安装程序会检查 Python 和其他依赖项,因此如果有任何错误,它应该报告。)

python.exepythonw.exe的主要区别是:

  • python.exe 在执行模块时打开控制台窗口, 或者,如果 运行 直接从命令行执行,则在当前 console window 阻止任何进一步的命令,直到模块 出口。所以基本上用于控制台应用程序或调试。
  • 另一方面,
  • pythonw.exe 适用于 GUI 应用程序或非 GUI 应用程序,所以如果一个模块是用 pythonw.exe 执行的,那么就没有 控制台 window 已打开,如果 运行 通过当前控制台模块是 在单独的进程中执行,控制台可用于进一步 命令马上。缺点是这里没有提供输出 案例,即没有打印错误,因为没有关联的控制台 window 使用 运行ning Python 模块。

详情见:official docs, chapter from a book(small but informative), Python mailing list.

关于 Google App Engine,他们在 installation page 上声明:

You will need Python 2.7 to use the App Engine SDK, because the Development Server is a Python application. Download Python 2.7.X (don't use a higher version) from the Python web site.

因此,由于服务器是无 GUI 应用程序,这可能就是 App Engine 选择 pythonw.exe 的原因。

Pythonw.exe是不打开控制台的可执行文件。 Python.exe 将打开控制台。在这种情况下,您可能想使用 pythonw.exe,因为我不知道您为什么要为应用引擎打开一个终端。

https://docs.python.org/2/using/windows.html

App Engine SDK 也没有找到您安装的 python。这可能是因为您没有全局环境。声明的变量。