解决$GOPATH/go.mod exists but should not

解决报错$GOPATH/go.mod exists but should not

今天又一次配环境,终于解决了go mod和GOPATH之间的冲突关系了

解决

我们刚装上go和go的ide例如goland,需要配置go的环境。此时我们需要注意,在go1.11版本之后,引入了go mod来统一对包进行管理,在此之前用的是gopath。相信大部分人现在装的都是1.11以上版本。

重点来了:我在网上找了很久没有找到相关文章,但是在我的实践之下我发现了go mod和gopath不能是同一个文件夹。

需求也来了,我不想每次go get的包都放在c盘,因为c盘是默认的gopath,gopath路径又是存放包的路径。但是我一设置了gopath之后go mod又不能用了。此时应该怎么解决呢?

也就是说,有go mod的地方不能是GOPATH。

我们只需要在别的盘新建一个文件夹专门用作gopath存每次go get的包,有两个方法,1.在环境变量中设置GOPATH,路径就是你新建的那个文件夹。2.cmd输入go env -w GOPATH=刚刚的文件夹路径。如图
这个叫做GOPATH的文件夹就是我新建的。在这里插入图片描述
只需要设置这一处的GOPATH,goland中的setting里面的都可以全部清空。设置完了之后,就可以正常使用了,在你的项目目录下输入go mod init xxx,然后就生成了一个go mod文件,然后go get -u -v google.golang.org/grpc试一下
成功
成功导入包,到此就结束了。

go get的时候出现错误dial tcp:xxx

另外,如果go get 出现错误dial tcp:xxx那就是代理出现问题,被防火墙挡了,换个国内的代理地址就行在终端输入go env -w GOPROXY=你的国内代理地址,设置完了之后go env查看一下成功没有
在这里插入图片描述
我改成了这个就解决了错误

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值