在 Go 中,本地導入用於從同一目錄或子目錄導入包當前工作目錄。但是,當導入非本地套件時,無法應用此技術,例如錯誤“local import "./greeting" in non-local package.”
為了理解錯誤,讓我們檢查提供的檔案結構:
/Users/clarkj84/Desktop/LearningGo └── src └── jacob.uk.com ├── greeting │ └── greeting.go └── helloworld.go
嘗試執行go install 時出現問題src 目錄中的jacob.uk.com。此命令嘗試安裝 jacob.uk.com 軟體包,其中包括 helloworld.go 中的 ./greeting 導入。然而,Go 將此解釋為本地導入,因為它是從 src 目錄執行的,而套件本身並不位於 src 內。
要解決該錯誤,有兩個選項可用:
import "jacob.uk.com/greeting"
這種方法允許導入和使用包,而不管工作目錄如何。
絕對導入比本地導入有幾個優點:
以上是為什麼導入非本機Go套件時「本地導入」失敗?的詳細內容。更多資訊請關注PHP中文網其他相關文章!