Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google app engine 如何将具有依赖项的golang应用部署到具有gcloud的应用引擎?_Google App Engine_Go_Deployment_Gcloud - Fatal编程技术网

Google app engine 如何将具有依赖项的golang应用部署到具有gcloud的应用引擎?

Google app engine 如何将具有依赖项的golang应用部署到具有gcloud的应用引擎?,google-app-engine,go,deployment,gcloud,Google App Engine,Go,Deployment,Gcloud,我有一个使用“github.com/gorilla/mux”的应用程序,我可以使用goapp deploy进行部署。但我无法对gcloud preview app deploy执行相同的操作,因为我面临以下错误: Beginning deployment... Copying files to Google Cloud Storage... Synchronizing files to [<googlecloudsdk.api_lib.app.cloud_storage.BucketRef

我有一个使用“github.com/gorilla/mux”的应用程序,我可以使用
goapp deploy
进行部署。但我无法对
gcloud preview app deploy执行相同的操作,因为我面临以下错误:

Beginning deployment...
Copying files to Google Cloud Storage...
Synchronizing files to [<googlecloudsdk.api_lib.app.cloud_storage.BucketReference object at 0x10514e790>].
File upload done.
Updating module [api]...failed.
ERROR: (gcloud.preview.app.deploy) Error Response: [9] Deployment contains files that cannot be compiled: Compile failed:
2016/03/22 09:06:40 go-app-builder: build timing: 1×6g (42ms total), 0×6l (0 total)
2016/03/22 09:06:40 go-app-builder: failed running 6g: exit status 1

api.go:29: can't find import: "github.com/gorilla/handlers"
正在开始部署。。。
正在将文件复制到Google云存储。。。
正在将文件同步到[]。
文件上传完成。
更新模块[api]…失败。
错误:(gcloud.preview.app.deploy)错误响应:[9]部署包含无法编译的文件:编译失败:
2016/03/22 09:06:40 go应用程序生成器:构建时间:1×6g(总共42毫秒),0×6l(总共0秒)
2016/03/22 09:06:40 go app builder:运行6g失败:退出状态1
api.go:29:找不到导入:“github.com/gorilla/handlers”
我希望能够做到这一点,因为我需要在合并时从travisCI部署,并且我希望使用service-client.json进行授权


有什么办法吗

要直接回答您的问题,解决方法是使用Go标准环境的App Engine文档中推荐的
goapp deploy
。当
gcloud preview app deploy
可用时,goapp正是为处理go的特定环境和依赖性需求而推荐的


或者,如果您希望使用gcloud,则需要立即使用
gcloud预览应用程序部署

自从Google Cloud SDK 142.0.0和app engine go 1.9.50以来,您应该能够部署您的应用程序

gcloud beta app deploy

这也使您能够使用CI/CD工具

是否有帮助?指向,这是针对托管虚拟机的,但看起来是相同的问题。eadeploy仅适用于托管虚拟机,托管虚拟机应具有稍微不同的应用程序结构(main func等)。也存在此问题,但最终只使用了
goapp deploy
对我来说是相同的,我现在正在CI中使用我的oauth\u refrash\u令牌。这里有一个相关的问题,你有没有指定你的?另外,您是否使用导入所需的包?您可以使用确认以查看已导入的包。