首頁 >後端開發 >Golang >為什麼 Go 回傳「非本地包中的本地導入」錯誤,如何解決?

為什麼 Go 回傳「非本地包中的本地導入」錯誤,如何解決?

Patricia Arquette
Patricia Arquette原創
2024-12-13 19:34:23313瀏覽

Why Does Go Return a

Go 套件中的本地導入

Go 中,import 語句用於導入套件。包用於將程式碼組織成邏輯單元。導入包時,可以使用本地導入或非本地導入。

本地導入從目前工作目錄導入包。非本地導入從另一個目錄導入包。

錯誤

以下是文件結構:

.
├── bin
│   └── hello
├── pkg
└── src
    └── jacob.uk.com
        ├── greeting
        │   └── greeting.go
        └── helloworld.go

具有以下GOPATH:

/Users/clarkj84/Desktop/LearningGo

如果在src中執行以下命令資料夾:

/usr/local/go/bin/go install jacob.uk.com

您將收到以下錯誤:

local import "./greeting" in non-local package

出現此錯誤是因為您在非本地包中使用本地導入。

解決方案

要修復此錯誤,可以將工作目錄更改為 src/jacob.uk.com,然後執行 go install 而無需指定包。如果您有一個包含以下內容的 helloworld.go 檔案:

package main

import "./greeting"

func main() {

}

您將收到一條編譯錯誤,指出「已匯入但未使用」。一旦您使用導入的greeting包中的某些內容,它就應該編譯。

但是,不建議使用本機匯入。相反,您應該使用以下導入語句:

import "jacob.uk.com/greeting"

透過使用此導入語句,您將能夠從任何地方編譯、運行和安裝程式碼。

以上是為什麼 Go 回傳「非本地包中的本地導入」錯誤,如何解決?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn