我的项目使用的是mod方式管理依赖,当A中需要B包中的函数时,就导入到了A包,A包又引入到了项目的mod中,此时出现问题,
报错为
xxx@v0.0.0: malformed module path "xxx": missing dot in first path element
报错的意思是路径前缀应该是一个url,因为url会用“.”分隔符,这是因为mod文件的require是远程代码库依赖,程序会解析url并拉取url的代码到本地gopath下的pkg/mod/cache。但是我现在项目引用的都是本地包,我用
module project-mod
go 1.15
require(
"modA" v0.0.0 // indirect
)
replace(
"modA" => ./modA
)
模块中都采用这种方式,一直都在报错,在网上搜索也没有适合的解决办法,于是重新写了一遍,以为自己写错了,无意的忘记在require中写"modA" v0.0.0,然后就开始运行程序,结果跑起来了,后来感觉可能replace是到本地包的,,可能是瞎想的,当然还是要以官方文档为标准。