【Go】Go moudle、Go 环境变量、import path XXX should not have @version问题解决
报错解释:
- Go moudle:Go 语言的模块系统,用于管理项目依赖。
- Go 环境变量:
GOPROXY
和GONOSUMDB
环境变量用于配置 Go 模块代理和禁用依赖项的数据库校验。 - import path XXX should not have @version:当你尝试导入一个具体版本的包时,Go 模块系统要求你使用版本前缀
v
。例如,import "gopkg.in/yaml.v2"
而不是import "gopkg.in/yaml@v2"
。
报错解决方法:
- 确保你的 Go 版本至少为 1.11,因为这是模块系统引入的版本。
- 在项目根目录下创建
go.mod
文件,使用go mod init <module-name>
初始化模块。 - 设置
GOPROXY=https://proxy.golang.org,direct
环境变量。 - 如果你不想校验依赖项数据库,设置
GONOSUMDB=*
环境变量。 - 修正导入路径,确保使用
import "gopkg.in/yaml.v2"
而不是import "gopkg.in/yaml@v2"
。 - 运行
go get <package-name>
获取依赖,并更新go.mod
文件。 - 如果你是在 IDE 或文本编辑器中工作,确保 IDE 的 Go 插件或扩展支持 Go 模块系统。
评论已关闭