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中文网其他相关文章!