The goapp/serve.go
, который производит это сообщение об ошибке ("unable to find dev_appserver.py
") показывает следующий код:
if p := os.Getenv("APPENGINE_DEV_APPSERVER"); p != "" {
return p, nil
}
return "", fmt.Errorf("unable to find dev_appserver.py")
Так перепроверить, если при использовании goapp, APPENGINE_DEV_APPSERVER
переменная окружения фактически установлена.
Смотри, например, этот gotool.bat
скрипт, который делает набор переменная
(но dsymonds справедливо points out, что вы не должны установить его непосредственно, вы всегда должны использовать goapp
):
@echo off
:: Copyright 2012 Google Inc. All rights reserved.
:: Use of this source code is governed by the Apache 2.0
:: license that can be found in the LICENSE file.
setlocal
set GOROOT=%~dp0\goroot
set APPENGINE_DEV_APPSERVER=%~dp0\dev_appserver.py
set GOARCH=
set GOBIN=
set GOOS=
:: Set a GOPATH if one is not set.
if not "%GOPATH%"=="" goto havepath
set GOPATH=%~dp0\gopath
:havepath
%GOROOT%\bin\%~n0.exe %*
Damit почему не может они включают его в сообщение об ошибке :) «APPENGINE_DEV_APPSERVER env не установлен правильно» –
Не устанавливайте APPENGINE_DEV_APPSERVER. Используйте goapp с вершины SDK, а не тот, который похоронен под goroot/bin. – dsymonds
@dsymonds вы правы. Я не хотел, чтобы пользователь сам установил 'APPENGINE_DEV_APPSERVER', просто чтобы проверить, не установлено ли оно. Я перефразировал ответ и включил ваш комментарий. – VonC