0

尝试使用 Cloud SQL 部署我的 GO 应用程序,gcloud app deploy但每次构建都失败,并出现未找到包的错误。不知道它是从哪里挑选的GOPATH。是否可以更改GOPATH谷歌云引擎。

  Step #0: main.go:9:2: cannot find package "github.com/gin-gonic/gin"
  in any of: Step #0:   /usr/local/go/src/github.com/gin-gonic/gin (from
  $GOROOT) Step #0:     /workspace/_gopath/src/github.com/gin-gonic/gin
  (from $GOPATH) Step #0: main.go:10:2: cannot find package
  "github.com/go-sql-driver/mysql" in any of: Step #0:
    /usr/local/go/src/github.com/go-sql-driver/mysql (from $GOROOT) Step
  #0:   /workspace/_gopath/src/github.com/go-sql-driver/mysql (from $GOPATH) Step #0: main.go:8:2: cannot find package
  "google.golang.org/appengine" in any of: Step #0:
    /usr/local/go/src/google.golang.org/appengine (from $GOROOT) Step #0:
    /workspace/_gopath/src/google.golang.org/appengine (from $GOPATH)

我有导入语句来包含上述库。我的本地GOPATH设置为/Users/amar.jain/go/并且正在尝试使用/workplace/_gopath/

我也在使用 GO App Engine SDK。

4

2 回答 2

0

您使用的是应用引擎标准环境吗?

应用引擎标准环境对 GOPATH 很挑剔,它确实会尝试上传所有需要的文件,但它通常有助于提供依赖项并确保 app.yaml 处于顶层。

https://cloud.google.com/appengine/docs/standard/go/building-app/creating-your-application#structuring_your_application_project

例如,在使用标准 go /cmd /pkg 结构时,我遇到了标准环境问题。

于 2018-06-17T06:15:32.360 回答
0

hereapp.yaml中所述,使用灵活环境时应从文件中删除以下行:

api_version: go1

比较FlexibleStandardapp.yaml中的文件示例。

这些是配置灵活环境时可用的选项。

于 2018-06-13T10:27:36.027 回答