为什么 google-cloud-sdk go-app-stager 无法识别 GOPATH?
Why is GOPATH not recognized by google-cloud-sdk go-app-stager?
当我尝试更新我的 appengine 项目时,出现错误。
$ sudo gcloud app deploy
ERROR: (gcloud.app.deploy) Staging command [/usr/local/google-cloud-sdk/platform/google_appengine/goroot-1.6/bin/go-app-stager /Users/baz/app/app.yaml /tmp/tmpSZLK/tmpIQ4] failed with return code [1].
------------------------------------ STDOUT ------------------------------------
------------------------------------ STDERR ------------------------------------
2017/07/08 16:22:06 failed analyzing /Users/baz/app: cannot find package "bitbucket.org/foo/bar" in any of:
($GOROOT not set)
($GOPATH not set)
GOPATH:
$ echo $GOPATH
/Users/baz/go
$ go env GOPATH
/Users/baz/go
很明显 GOPATH 已设置(我将其导出到我的 .bash_profile)。
TL;DR - 不要使用 sudo
部署应用程序。
更长的版本
您正在使用 sudo
运行 执行 gcloud app deploy
命令。当 运行 以 root
用户身份执行命令时,sudo
命令的性质不会保留当前的环境变量集。
尝试在没有 sudo
的情况下部署您的 App Engine 应用程序:
gcloud app deploy
如果你确实需要 运行 你命令为 sudo
(这是你的设置不知何故被破坏的味道),你可以看看 this post。虽然,我建议研究 运行 在没有 sudo
.
的情况下执行命令的可能性
当我尝试更新我的 appengine 项目时,出现错误。
$ sudo gcloud app deploy
ERROR: (gcloud.app.deploy) Staging command [/usr/local/google-cloud-sdk/platform/google_appengine/goroot-1.6/bin/go-app-stager /Users/baz/app/app.yaml /tmp/tmpSZLK/tmpIQ4] failed with return code [1].
------------------------------------ STDOUT ------------------------------------
------------------------------------ STDERR ------------------------------------
2017/07/08 16:22:06 failed analyzing /Users/baz/app: cannot find package "bitbucket.org/foo/bar" in any of:
($GOROOT not set)
($GOPATH not set)
GOPATH:
$ echo $GOPATH
/Users/baz/go
$ go env GOPATH
/Users/baz/go
很明显 GOPATH 已设置(我将其导出到我的 .bash_profile)。
TL;DR - 不要使用 sudo
部署应用程序。
更长的版本
您正在使用 sudo
运行 执行 gcloud app deploy
命令。当 运行 以 root
用户身份执行命令时,sudo
命令的性质不会保留当前的环境变量集。
尝试在没有 sudo
的情况下部署您的 App Engine 应用程序:
gcloud app deploy
如果你确实需要 运行 你命令为 sudo
(这是你的设置不知何故被破坏的味道),你可以看看 this post。虽然,我建议研究 运行 在没有 sudo
.