当你根据教程来到3.4 go的导包命名规则时,发现main函数要导入abd包时出现以下报错,并怎么改都改不好,问gpt也没用。包 is not in std xxx
main.go:3:2: package gocode/projectgo/6_namepackage/abd is not in std (D:\golang_sdk\src\gocode\projectgo\6_namepackage\abd)
首先,那么你需要在cmd 检查 go env
如果你发现GO111MODULE= 空白,这是默认从GOROOT查找默认包
那么需要把他设置为off,则可解决以上报错。输入指令:go env -w GO111MODULE=off
ps:
GO111MODULE 有三个值:off, on和auto(默认值)
GO111MODULE=off,go命令行将不会支持module功能,寻找依赖包的方式将会沿用旧版本那种通过vendor目录或者GOPATH模式来查找。
GO111MODULE=on,go命令行会使用modules,而一点也不会去GOPATH目录下查找。依赖包的存放位置变更为$GOPATH/pkg,允许同一个package多个版本并存,且多个项目可以共享缓存的 module