为什么 App Engine 找不到 Mailgun 包

Why can AppEngine Not Find Mailgun Pakage

我有我的 Golang App Engine 项目。我不是 Go 专家,所以包管理器对我来说有点神秘。直到现在我还没有遇到任何问题。当我尝试使用 MailGun Api 时,它说它无法解析依赖关系。我像这样导入 mailgun: import "github.com/mailgun/mailgun-go".

然而,当我尝试 运行 时:gcloud app deploy 我收到以下错误:

 GO111MODULE=auto, but no go.mod found, so building with dependencies from GOPATH
main-package: MyPackage
2020/05/28 08:44:25 Staging second-gen Standard app (GOPATH mode): failed analyzing C:\Users\myUserName\go\src\MyPackage: cannot f
ind package "github.com/mailgun/mailgun-go/v4/events" in any of:
        ($GOROOT not set)
        C:\Users\MyUserName\go\src\github.com\mailgun\mailgun-go\v4\events (from $GOPATH)
GOPATH: C:\Users\MyUserName\go

当我导航到 C:\Users\MyUserName\go\src\github.com\mailgun\mailgun-go 时,存在但没有文件夹 v4events... 不确定问题是什么以及获取事件文件夹的位置。感谢您的帮助!

Go 模块使用 /vX 约定来区分不同的主要版本。这意味着您需要使用 Go 模块来使用这样的包。

为此,您需要在项目的根目录中 运行 go mod init

此外,如果您使用的是旧版本的 Go(1.11 或 1.12),您需要设置 GO111MODULE=on 以确保您的代码被视为 Go 模块。