问题现象
编译go程序的时候报错:
GOROOT=D:\go\GoSDK #gosetup GOPATH=D:\hc\workspace\fly\go\src\github.com\learngo;D:\hc\workspace\fly\go #gosetup D:\go\GoSDK\bin\go.exe build -o C:\Users\FLY\AppData\Local\Temp\___go_build_github_com_learngo_basic_basic.exe github.com/learngo/basic/basic #gosetup can't load package: package github.com/learngo/basic/basic: cannot find module providing package github.com/learngo/basic/basic
或者
GOROOT=D:\go\GoSDK #gosetup GOPATH=D:\hc\workspace\fly\go #gosetup D:\go\GoSDK\bin\go.exe build -o C:\Users\FLY\AppData\Local\Temp\___go_build_github_com_learngo_fly__1_.exe . #gosetup go: cannot find main module; see 'go help modules'
问题解决
如果你是使用go mod 管理依赖,首先检查:项目根目录有没有go.mod文件
如果没有
执行命令go mod init在当前目录下生成一个go.mod文件
具体参考:Go modules使用步骤
如果使用GoLand开发工具
Settings--Go--Go Modules(vgo)中:
- 开启Go Modules继承,
- 配置代理:https://goproxy.io,direct
GoLand-Go Modules配置