go mod tidy 提示错误 go mod tidy -go=1.16 && go mod tidy -go=1.17

goland中使用go mod tidy提示如下错误

错误原因

> go mod tidy

github.com/myrepo/myproj imports
    go.k6.io/k6 imports
    go.k6.io/k6/cmd imports
    github.com/fatih/color loaded from github.com/fatih/color@v1.12.0,
    but go 1.16 would select v1.13.0

To upgrade to the versions selected by go 1.16:
    go mod tidy -go=1.16 && go mod tidy -go=1.17
If reproducibility with go 1.16 is not needed:
    go mod tidy -compat=1.17
For other options, see:
    https://golang.org/doc/modules/pruning

解决办法:可以参考如下连接中,提到的:

go modules - go mod tidy error message: “but go 1.16 would select” - Stack Overflow

截图:

在这里插入图片描述

翻译

在这里插入图片描述

总结:升级你的go 版本

升级go 版本到 1.18

参考:

如何升级到go1.18

下载源

windows下,go版本升级到1.18

我是在goland,自己的工作目录下面执行更新操作的,在cmd中应该也是可以的

1.下载源

go install github.com/SunJary/dl/go1.18@latest     // 默认使用清华大学源下载 ustc

此时在你的%GOPATH%/bin目录下会生成一个go1.18.exe文件,我的exe文件如下

在这里插入图片描述

在这个路径中输入cmd(或者在goland中,进入到这个目录也可以)- 下方也可以直接打开cmd,然后进入到这个目录也行
在这里插入图片描述

如下图

在这里插入图片描述

1.在go1.18.exe所在路径下输入 go1.18.exe version 会提示 需要下载go 1.18 的sdk

2.go1.18 download 下载go1.18的sdk

3.同路径下输入go1.18 version,版本为go1.18,但是输入go version 版本还是之前的版本

4.替换在环境变量中的go sdk bin目录

替换path中sdk的bin路径 以及 goland中GOROOT路径

总结:重新下载sdk,修改环境变量中的path,修改goland中go sdk路径

2.替换

也是根据之前cmd中的提示,找到go1.18的sdk存放路径,上面截图中提示:go1.18存放路径为C:\Users\Administrator\sdk\go1.18 如下
在这里插入图片描述

下面二选一

:修改 或者 添加 go1.18的bin目录,如下,如果之前你这里是老版本的go sdk bin目录路径,就将其替换成go1.18的sdk的路径即可

在这里插入图片描述

还有用户变量的Path中,也加入C:\Users\Administrator\sdk\go1.18\bin

:拷贝go 1.18的sdk目录到任何你想存放这个sdk的路径中,然后修改go sdk的一些环境变量。

将go1.18 的sdk 移动到你原来下载的那个go sdk路径中去,如下:

我的老版本的go sdk路径

在这里插入图片描述

为了节省C盘空间,我将go1.18的sdk移动到了下面的路径中

在这里插入图片描述

然后 添加go1.18 sdk下的bin目录到Path中(即go.exe文件所在的路径 - 这跟最初修改的go sdk的步骤基本一样)

在这里插入图片描述

上面用户变量中的Path也更新一下(都更新反正不会有坏处 - 用户中的Path里是使用cmd时,可以不进入exe所在路径就可以执行文件)
在这里插入图片描述

此时,在cmd中的任何位置执行go version,发现版本已经更新成了1.18 (理解成:重新下载了go 的sdk而已,只是修改了一些环境依赖)

回到goland中,执行go version,你会发现,你的go版本可能还是以前的老版本,因为goland中也是需要修改go sdk的路径的,如下,将GOROOT替换成,你的go 1.18的sdk路径

在这里插入图片描述

,然后在goland的terminal中输入go version,发现已经到了1.18版本了

此时,将你的go.mod中的sdk依赖,修改成go 1.18,最后再执行 go mod tidy 就不会再有错误提示了

在这里插入图片描述
在这里插入图片描述

上方go mod tidy之后,不会再有如下的错误了

github.com/myrepo/myproj imports
    go.k6.io/k6 imports
    go.k6.io/k6/cmd imports
    github.com/fatih/color loaded from github.com/fatih/color@v1.12.0,
    but go 1.16 would select v1.13.0

To upgrade to the versions selected by go 1.16:
    go mod tidy -go=1.16 && go mod tidy -go=1.17
If reproducibility with go 1.16 is not needed:
    go mod tidy -compat=1.17
For other options, see:
    https://golang.org/doc/modules/pruning
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值