golang意外的目录布局

Win*_*ero 5 go goland

所以我从github.com/minio/minio下载了minio

我想从源代码运行它,

我创建我的目录,如:

~/Downloads/minio-RELEASE.2017-06-13T19-01-01Z
|
 src
   |
    all minio directories, including vendor, like the image below
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我还使用godep解决GOPATH下的其他依赖项.

现在我从Gogland运行它(去IDE)

表明:

GOROOT=/usr/local/Cellar/go/1.8.3/libexec
GOPATH=/Users/xl/Downloads/minio-RELEASE.2017-06-13T19-01-01Z:/Users/xl/go
/usr/local/Cellar/go/1.8.3/libexec/bin/go build -i -o /private/var/folders/8v/6dg7d6mx2850sv1gp8ts9thm0000gn/T/go_run_main_gogo /Users/xl/Downloads/minio-RELEASE.2017-06-13T19-01-01Z/src/main.go
unexpected directory layout:
    import path: github.com/Azure/azure-sdk-for-go/storage
    root: /Users/xl/Downloads/minio-RELEASE.2017-06-13T19-01-01Z/src
    dir: /Users/xl/Downloads/minio-RELEASE.2017-06-13T19-01-01Z/src/vendor/github.com/Azure/azure-sdk-for-go/storage
    expand root: /Users/xl/Downloads/minio-RELEASE.2017-06-13T19-01-01Z/src
    expand dir: /Users/xl/Downloads/minio-RELEASE.2017-06-13T19-01-01Z/src/vendor/github.com/Azure/azure-sdk-for-go/storage
    separator: /
Run Code Online (Sandbox Code Playgroud)

现在我很困惑,问题是什么?文件都在那里,目录就像它的打印一样.我如何解决它?谢谢.

小智 8

在Golang 1.13上,从1.11升级到1.13后,我的所有代码突然发生在我身上。

似乎golang 1.13不再喜欢“ ./something”之类的导入。

我必须开发任何导入,例如“ myapp / something”


Von*_*onC 6

请参阅GitHub代码布局

$GOPATH是项目的根目录 - 您的每个Github存储库都将在下面的几个文件夹中签出$GOPATH.
您的$GOPATH变量将指向Go工作区的根,如" 如何编写Go代码"中所述.

在您的情况下,在您的GOPATH文件夹下,您应该有

src/github.com/minio/minio
Run Code Online (Sandbox Code Playgroud)

Anf 然后只有"所有minio目录,包括供应商"


Sen*_*nel 6

如果您在 goroot 和 gopath 下有重复的存储库,就会发生这种情况。删除 goroot 之一。