App Engine Standard环境下Go项目Vendoring配置失败求助
App Engine Standard Go环境下使用dep进行Vendoring失败,找不到"context"包
我了解这个话题已经有相关讨论,但还是没找到适配我自身场景的可行方案。我现在卡在了App Engine Standard环境下让Go项目的Vendoring正常工作这个问题上,当前我是用dep工具来做依赖管理的,正在构建一个GraphQL API。
我的项目文件夹结构是这样的:
/GOPATH └──/src └──/acme ├──/app | ├── app.yaml | └── app.go ├──/src | ├── /mutations/ | ├── /queries/ | └── /types/ └──/vendor/
在Cloud Shell中执行goapp serve app/app.yaml时构建失败,报错信息如下:
INFO 2018-05-14 15:42:08,386 devappserver2.py:764] Skipping SDK update check. INFO 2018-05-14 15:42:08,471 api_server.py:268] Starting API server at: http://0.0.0.0:47213 INFO 2018-05-14 15:42:08,600 dispatcher.py:199] Starting module "default" running at: http://0.0.0.0:8080 INFO 2018-05-14 15:42:08,601 admin_server.py:116] Starting admin server at: http://0.0.0.0:8000 ERROR 2018-05-14 15:42:13,983 go_runtime.py:181] Failed to build Go application: (Executed command: /google/go_appengine/goroot/bin/go-app-builder -app_base /home/xxx/gopath/src/acme/app -arch 6 -dynamic -goroot /google/go_appengine/goroot -gopath /home/xxx/gopath:/google/gopath -nobuild_files ^^$ -incremental_rebuild -unsafe -binary_name _go_app -extra_imports appengine_internal/init -work_dir /tmp/tmpbt8DA2appengine-go-bin -gcflags -I,/google/go_appengine/goroot/pkg/linux_amd64_appengine -ldflags -L,/google/go_appengine/goroot/pkg/linux_amd64_appengine app.go) /home/xxx/gopath/src/acme/vendor/github.com/graphql-go/graphql/definition.go:4: can't find import: "context" 2018/05/14 15:42:09 Can't find package "context" in $GOPATH: cannot find package "context" in any of: /home/xxx/gopath/src/acme/vendor/context (vendor tree) /google/go_appengine/goroot/src/context (from $GOROOT) /home/xxx/gopath/src/context (from $GOPATH) /google/gopath/src/context
一开始我以为是某个依赖没有使用完整的context包名,但我当前使用的是Go 1.8版本,这个推测应该不成立。有没有人成功在App Engine Standard环境下配置好Vendoring?我已经被这个问题困扰一整天了。
内容的提问来源于stack exchange,提问作者SebScoFr
相关产品推荐
相关产品推荐

