[英]golang unexpected directory layout
所以我從 github.com/minio/minio 下載了 minio
我想從源代碼運行它,
我創建我的目錄,如:
~/Downloads/minio-RELEASE.2017-06-13T19-01-01Z
|
src
|
all minio directories, including vendor, like the image below
我還使用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: /
現在我很困惑,這是什么問題? 文件都在那里,目錄就像它正在打印的一樣。 我如何解決它? 謝謝。
在 Golang 1.13 上,從 1.11 升級到 1.13 后,我的所有代碼突然發生了這種情況。
似乎 golang 1.13 不再喜歡像“./something”這樣的導入。
我必須開發任何導入,如“myapp/something”
$GOPATH
是項目的根目錄——你的每個 Github 存儲庫都將在$GOPATH
下的幾個文件夾中檢出。
您的$GOPATH
變量將指向您的 Go 工作區的根目錄,如如何編寫 Go 代碼中所述。
在你的情況下,在你的GOPATH
文件夾下,你應該有
src/github.com/minio/minio
Anf 只有然后“所有 minio 目錄,包括供應商”
如果您在 goroot 和 gopath 下有重復的存儲庫,就會發生這種情況。 刪除 goroot 一個。
同樣對於 go1.13(移動到 go mod),我發現如果我將我的項目從我的 $GOPATH 下移出,我可以使用import "./mypackage"語句。 $GOPATH 下的同一個項目不會因上述 OP 給出的錯誤而構建。 我還沒有准備好放棄我的 $GOPATH 環境變量,但我確實喜歡在可能的情況下將小包保留在他們的項目本地,而不在不需要時提交到 go.mod 文件。
如果你的項目文件夾在 $GOPATH 目錄下,那么你應該在不使用“./package”的情況下導入你的包。
僅當您的項目文件在 $GOPATH 之外時,您才可以導入名稱為“./package”的包
在我意識到由於我的項目位置而無法正確導入本地包后,我遇到了這個問題。 我的項目不在 GOPATH 位置,所以我把我的項目移到了那里。 搬家前
我通過 ./package name 導入了包,在我將項目移動到 GOPATH 后,我通過 projectname/packagename 正確地導入了包。
所以我所做的是以正確的方式導入包“projectname/packagename”,所以我將導入“./packagename”更正為“”projectname/packagename。 希望它不會太混亂。 似乎這個錯誤可以從不同的情況出現。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.