Google app engine 使用“go get”失败;在github.com/…”中找不到可构建的Go源文件;
我正在尝试构建一个docker容器,在那里我可以构建我的GAE go应用程序。稍后我将在gitlab.com中使用此容器 我有一个安装了最新golang gae sdk的容器。 我在我的项目根目录(/project)中,当我尝试构建它时:Google app engine 使用“go get”失败;在github.com/…”中找不到可构建的Go源文件;,google-app-engine,go,docker,gitlab-ci,Google App Engine,Go,Docker,Gitlab Ci,我正在尝试构建一个docker容器,在那里我可以构建我的GAE go应用程序。稍后我将在gitlab.com中使用此容器 我有一个安装了最新golang gae sdk的容器。 我在我的项目根目录(/project)中,当我尝试构建它时: goapp build ./... 它得到这样的回应: /project/src/github.com/gorilla/mux中没有可构建的Go源文件 当我尝试获取软件包时: goapp get ./... 我得到了和以前一样的回答。 构建它的唯一方法是删
goapp build ./...
它得到这样的回应:
/project/src/github.com/gorilla/mux中没有可构建的Go源文件
当我尝试获取软件包时:
goapp get ./...
我得到了和以前一样的回答。
构建它的唯一方法是删除github.com文件夹。但这不应该在存储库中,以便在我的git repo中具有正确版本的依赖项吗
有人能帮助我或解释一下这是如何工作的吗?我遇到了一个类似的问题,尽管go安装正确并且所有源文件都存在,但我无法构建 在我的例子中,操作系统使用的go版本比源代码要求的版本旧。您可以通过以下方式检查版本:
go --version
在/project/src/github.com/gorilla/mux目录中,查看主源文件的第一行。它可以包含这样一行:
// +build go1.5
例如,这意味着您至少需要go 1.5才能构建。在我的例子中,ubuntu使用的是位于
whereis go
我删除了旧的二进制文件夹(可能是你不应该做的),重新安装了go from scratch,这给了我正确的版本,构建工作正常。更多信息:我正在windows上开发,并尝试在docker容器中构建。我发现没有将github.com/gorilla/mux文件夹的文件推送到存储库中,因为该文件夹包含.git文件夹。为什么它包含这样一个文件夹?处理这种导入并使存储库能够开箱即用的最佳实践是什么?