关于go mod和内部包import
编写项目的时候遇到一个问题,即项目a在GOPATH/src中,a下有bc两个文件夹,b中的1.go需要调用c中的2.go。按照传统的import方法,应通过src下的相对路径进行引用。
import "a/c"
但此时如果如此编写,goland会提示无法reslove目录,即找不到对应ac的位置。最先项目没有放在src中,考虑是否因为没有放在GOPATH中导致无法找到,遂将项目转移到src下,问题并未解决。
考虑是否goland配置有问题,查看全局gopath与项目gopath,并无问题,最终考虑go mod。
发现关闭go mod之后,能够正常import内部包,但由于项目基于gin框架,草率解决问题显然有些敷衍,所以继续研究go mod的具体效用,最终解决。(初学对go mod等一知半解,问题比较基础)
1、go mod
关于go mod的系统介绍和官方说明,请借鉴以下文章
- 官方文档 (github)
- Roberto Selbach
Go mod即