go mod tidy 设置私有库不走代理

windows:

set GOPRIVATE=gitlab.xx.com
set GOPROXY=https://goproxy.cn
set GONOPROXY=gitlab.xx.com
set GONOSUMDB=gitlab.xx.com

mac

export  GOPRIVATE="gitlab.xx.com"
export  GOPROXY="https://goproxy.cn"
export  GONOPROXY="gitlab.xx.com"
export  GONOSUMDB="gitlab.xx.com"

否则:将 goproxy.cn加到前面

 reading https://goproxy.cn/gitlab.xx.com/jxy/backend_common/@v/v0.0.0-20200313123728-2fe9c6b2d83f.mod  有这样的地址吗

 

go mod tidy 成功之后,关掉IDE或  go build下,飘红才会消失

`go mod tidy` 是 Go 语言的一个命令,用于更新、清理和优化依赖包。它有以下几个功能: 1. **更新依赖版本**:如果模块文件 (`module.mod`) 中指定了某个的不同版本,运行 `go mod tidy` 可能会自动升级到最新版本。 2. **删除未使用的依赖**:它会检查所有导入的包是否都在代码中实际使用,并移除那些未使用的依赖包,以减少模块大小并提高构建速度。 3. **整理缓存路径**:该命令还会整理和压缩本地缓存目录下的依赖包,使其更有序和占用磁盘空间较小。 然而,在某些情况下,`go mod tidy` 可能无法正常运行: ### 原因: #### 缺失 `.mod` 文件 如果在执行 `go mod tidy` 命令之前,项目中不存在 `.mod` 文件,则需要先通过运行 `go mod init <module-path>` 来初始化模块结构。 #### 模块路径错误 确保当前工作目录对应于正确的模块路径。例如,如果你在一个非主模块文件下尝试运行此命令,可能会出现问题。 #### 网络问题 如果依赖包的源服务器无法访问,`go mod tidy` 尝试下载新版本依赖时就会失败。 #### 依赖冲突 如果有多个版本的同一依赖项存在于不同的导入路径中,可能会导致冲突,影响命令执行。 #### 缓存问题 如果本地缓存损坏或包含过期数据,可能会影响命令执行效果。在这种情况下,可以尝试清除缓存后再运行 `go mod tidy`。 #### 依赖声明不完整或错误 确保所有依赖项都已正确声明在 `go.mod` 文件中,且版本号指定明确无误。 ### 解决方案: 1. **初始化模块**:运行 `go mod init <module-path>` 确保模块结构正确。 2. **检查网络连接**:确认网络环境允许从公共仓下载依赖项。 3. **处理依赖冲突**:使用 `go mod graph` 查看依赖图谱,识别潜在冲突并解决它们。 4. **清理缓存**:执行 `rm -rf ~/go/pkg/mod` 清理全局缓存,或只针对当前模块清空本地缓存。 5. **检查和修复 `go.mod` 文件**:确保依赖声明准确无误。 6. **手动添加缺失依赖**:如果 `go mod tidy` 遇到问题,可以直接通过 `go get` 或者修改 `go.mod` 和 `go.sum` 文件来解决问题。 ### 相关问题: 1. 如果我在使用 `go mod tidy` 后发现依赖更新了版本但还是有问题,应该如何排查和解决? 2. 当我遇到网络问题时,如何使用代理服务器使得 `go mod tidy` 能够成功获取依赖? 3. 我如何确定我的项目依赖管理是否存在死锁风险,应该怎样预防?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值