先说下我的环境:go1.13,启用go doudle,同时设置了GOPATH、GOROOT
今天遇到了个比较愚蠢的坑,在当前项目的main中引用子目录的包编译时出现了如下错误,但是不引用子目录下的包却编译正常。
build command-line-arguments: cannot load questionbank-api/sdkInit: \
malformed module path "questionbank-api/sdkInit": \
missing dot in first path element
查询了一些网上给出的解决方案:
unset GOROOT
#or
unset GOPATH
依旧报错,无法解决
这时我想到了我启用了go moudle,但是未生成go.mod文件用于管理包依赖(太懒啦,大家别学我)
遂改之:
go mod init
成功解决~
另外 子目录的包中不应该有go.mod,否则会报同样错误。