Google app engine 获取错误“;名称';execfile';“未定义”;

Google app engine 获取错误“;名称';execfile';“未定义”;,google-app-engine,go,Google App Engine,Go,我已经完成了如何开始使用Go的所有步骤,但在尝试运行helloworld应用程序时遇到了一个问题 我得到以下错误: C:\Users\kirill\Desktop\go_appengine>goapp serve myapp Traceback (most recent call last): File "C:\Users\kirill\Desktop\go_appengine\\dev_appserver.py", line 83, in <module> _r

我已经完成了如何开始使用Go的所有步骤,但在尝试运行helloworld应用程序时遇到了一个问题

我得到以下错误:

C:\Users\kirill\Desktop\go_appengine>goapp serve myapp

Traceback (most recent call last):
  File "C:\Users\kirill\Desktop\go_appengine\\dev_appserver.py", line 83, in <module>
    _run_file(__file__, globals())
  File "C:\Users\kirill\Desktop\go_appengine\\dev_appserver.py", line 79, in _run_file
    execfile(_PATHS.script_file(script_name), globals_)
NameError: name 'execfile' is not defined
error while running dev_appserver.py: exit status 1
C:\Users\kirill\Desktop\go\u appengine>goapp-serve-myapp
回溯(最近一次呼叫最后一次):
文件“C:\Users\kirill\Desktop\go\u appengine\\dev\u appserver.py”,第83行,在
_运行\u文件(\uuuu文件,globals())
文件“C:\Users\kirill\Desktop\go\u appengine\\dev\u appserver.py”,第79行,在运行文件中
execfile(_PATHS.script_文件(script_名称),全局文件)
NameError:未定义名称“execfile”
运行dev_appserver.py时出错:退出状态1

Go AppEngine SDK需要Python 2.7(不能使用Python 3.x)。在我看来,您的SDK正在使用Python 3.X,或者根本没有Python(在您的
路径中)

首先确保将Python 2.7添加到您的路径中,以便
goapp
使用该路径。你可以在这里找到它:。对于Go AppEngine SDK,一个小型的、可移植的Python也足够了,您可以从这里获得它:。下载并解压缩它。它只是一个10 MB的文件,将其重命名为
python.exe
,并将其添加到您的
路径中

此外,在我看来,您从错误的文件夹启动Hello world应用程序:您站在SDK的文件夹中,您希望启动它,并指定您的应用程序位于SDK中的
myapp
子文件夹中,这是不可能的

导航到应用所在的文件夹(
app.yaml
必须在那里)。在该文件夹中执行命令

goapp serve
这将启动当前文件夹中的应用程序。要使其工作,必须将
goapp
命令(
goapp.bat
在windows上)添加到
路径中

如果您不能或不想将您的
go_appengine
文件夹添加到您的
路径
,请仍然导航到包含要启动的应用程序的文件夹,但提供goapp的路径,例如

C:\Users\kirill\Desktop\go_appengine\goapp serve
见: