关于VScode当中引入自己创建包时XXX is not in GOROOT的错误
今天在学习Go语言包这一章内容时,自己创建了一个包,想要在另一个包中进行引入使用其中的函数时,碰到了这样的错误:
main.go:4:2: package go_code/chapter04/functiondemo/utils is not in GOROOT (D:\Program Files\go1.17.1.windows-amd64\go\src\go_code\chapter04\functiondemo\utils)
后来也是经过了网络查找各种方案把这个问题给解决了,首先在终端环境中输入
go env
可以看到以下的相关配置
set GO111MODULE=on
set GOARCH=amd64
set GOBIN=
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=D:\goproject\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=D:\goproject
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=D:\Program Files\go1.17.1.windows-amd64\go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=D:\Program Files\go1.17.1.windows-amd64\go\pkg\tool\windows_amd64
set GOVCS=
set GOVERSION=go1.17.1
set GCCGO=gccgo
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=NUL
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\cfx\AppData\Local\Temp\go-build4035269302=/tmp/go-build -gno-record-gcc-switches
其中第一行的配置 set GO111MODULE=on
我们只需要将该设置改成off即可
运行代码 :
go env -w GO111MODULE=off
最后我们重新运行代码时,发现此时已经可以成功运行了。
|