【问题标题】:"goapp build" works, but "appcfg.py update" just "can't find import"...?“goapp build”有效,但“appcfg.py update”只是“找不到导入”......?
【发布时间】:2016-08-23 15:48:42
【问题描述】:

昨晚更新了 Google App Engine SDK 后... go env 和 goapp env 都有正确的 GOPATH 和 GOROOT,go build 和 goapp build 都可以工作,但 appcfg.py update ... 返回每​​个第三方包都丢失了。

即使我为每个包再次运行goapp get ... 或go get ...,也没有什么区别,因为它们已经在 GOPATH 中了。 两个命令都构建了项目这一事实就应该证实这一点。

可能出了什么问题? :(


编辑:每次我运行appcfg.py update .时都会产生不同的错误...

main.go:4:找不到导入:“github.com/gin-gonic/gin” github.com/gin-gonic/gin/binding/default_validator.go:7:找不到 导入:“gopkg.in/go-playground/validator.v8” github.com/gin-gonic/gin/context.go:17:找不到导入: “github.com/gin-gonic/gin/binding”

...在所有这些上运行goapp get ...,即使它们已经存在。

main.go:4:找不到导入:“github.com/gin-gonic/gin” github.com/gin-gonic/contrib/gzip/gzip.go:9:找不到导入: “github.com/gin-gonic/gin”github.com/gin-gonic/gin/render/yaml.go:10: 找不到导入:“gopkg.in/yaml.v2”

...重复,再次在所有这些上运行goapp get ...。

main.go:4:找不到导入:“github.com/gin-gonic/gin” github.com/gin-gonic/gin/render/yaml.go:10:找不到导入: "gopkg.in/yaml.v2"

没有意义。图书馆已经在那里了。我可以做 goapp build 并且它可以工作,但是 我无法部署。

所有这些都在“--- begin server output ---”和“--- end server output ---”包装内...这是服务器端问题吗?

【问题讨论】:

  • go_appengine/appcfg.py 的路径在您的 GOPATH 中吗?如果您可以使用它的整个路径运行 appcfg.py 而没有错误,那么它可能不在 GOPATH 或 GOROOT 中。
  • 不,不是。应该是吗?添加它似乎没有什么区别。
  • 另外,我刚刚启动了一个 Compute Engine 实例并在那里遇到了同样的问题......即使是全新安装。
  • 在上面添加了控制台输出。
  • 我认为你应该使用 goapp deploy 而不是 appcfg.py 进行 golang 部署。这行得通吗?

标签: google-app-engine go


【解决方案1】:

这是 App Engine SDK for Go 在推出期间发现并解决的一个已知问题。它是公开的跟踪器Issue 13230。这应该不再有效。

重要的一点是,正如 documentation 中所述,不应在 Go GAE 应用程序中实现 main() 函数,因为其行为是 unspecified。

如果有人仍然遇到此问题,请在App Engine public issue tracker 上提交新的缺陷报告,链接回Issue 13230 以获取上下文。

【讨论】:

    【解决方案2】:

    https://groups.google.com/forum/#!topic/google-appengine-go/rVHZXlSfC7E ... 正如另一位用户在此处指出的,这是 Google App Engine 的临时问题。

    可以通过注释掉你项目主包中的main()方法来解决。通常使用init(),因此这目前不会导致任何其他问题,除了同时部署到其他平台或在本地构建以执行非 App Engine 时的轻微不便。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-09
      • 1970-01-01
      • 2011-07-08
      • 2013-10-31
      • 2021-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多