Go依赖问题go get: xx@v1.0.1: Get “https://proxy.golang.org/xx“: dial tcp 172.217.27.145:443: i/o timeout

本文主要是介绍Go依赖问题go get: xx@v1.0.1: Get “https://proxy.golang.org/xx“: dial tcp 172.217.27.145:443: i/o timeout,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Go开始开发时,在国内目前基本都会 遇到依赖下载不了的问题,类似这样:在这里插入图片描述
go get: git.iglou.eu/Imported/go-wildcard@v1.0.1: Get “https://proxy.golang.org/git.iglou.eu/%21imported/go-wildcard/@v/v1.0.1.info”: dial tcp 172.217.27.145:443: i/o timeout

这是因为,Go 1.13 的发布后,为 Go 带来了不少变化(详见:https://golang.org/doc/go1.13 )。其中,Go modules 的扶正就是这次 Go 1.13 发布中开发者能直接感觉到的最大变化。

Go modules 最早发布于 Go 1.11,随着 Go modules 一起被发布的还有一个叫做 Module proxy protocol 的协议,通过它我们可以搭建 Go 模块代理,最后交由 GOPROXY 环境变量以指引 go 命令后续在抓取模块时的途径。
在这里插入图片描述
GOPROXY的值是一个以英文逗号 “,” 分割的 Go module proxy 列表,作用是用于使 Go 在后续拉取模块版本时能够脱离传统的 VCS 方式从镜像站点快速拉取。对于开发者来说,一个优秀的 Go 模块代理可以帮助我们解决很多问题,比如依赖无法直接下载时,如果有个代理可以帮助我们,那必定事半功倍。

但是GOPROXY拥有一个默认:https://proxy.golang.org,direct,而且很可惜 proxy.golang.org 在中国无法访问。这也是我们依赖下载时一直timeout的原因。

既然原因已知,是否有替代方案呢。答案是肯定的。官方不可以,我们目前可以用七牛云专门为咱们中国开发者而打造了一个 Go 模块代理:goproxy.cn。(ps:这个怎么也不能少了阿里云,阿里云也提供了类似的模块代理mirrors.aliyun.com/goproxy。我试了七牛的,速度很快,阿里的就当做备选了。参考文章https://studygolang.com/topics/9994)

接下来就是看如何设置了。很简单,可以执行语句

go env -w GOPROXY=https://goproxy.cn,direct

这样就可以顺畅的接口Go开发时的依赖问题了。(也是头疼了半天,才发现这个问题。。。。)

这篇关于Go依赖问题go get: xx@v1.0.1: Get “https://proxy.golang.org/xx“: dial tcp 172.217.27.145:443: i/o timeout的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/293049

相关文章

解决pandas无法读取csv文件数据的问题

《解决pandas无法读取csv文件数据的问题》本文讲述作者用Pandas读取CSV文件时因参数设置不当导致数据错位,通过调整delimiter和on_bad_lines参数最终解决问题,并强调正确参... 目录一、前言二、问题复现1. 问题2. 通过 on_bad_lines=‘warn’ 跳过异常数据3

全面解析Golang 中的 Gorilla CORS 中间件正确用法

《全面解析Golang中的GorillaCORS中间件正确用法》Golang中使用gorilla/mux路由器配合rs/cors中间件库可以优雅地解决这个问题,然而,很多人刚开始使用时会遇到配... 目录如何让 golang 中的 Gorilla CORS 中间件正确工作一、基础依赖二、错误用法(很多人一开

解决RocketMQ的幂等性问题

《解决RocketMQ的幂等性问题》重复消费因调用链路长、消息发送超时或消费者故障导致,通过生产者消息查询、Redis缓存及消费者唯一主键可以确保幂等性,避免重复处理,本文主要介绍了解决RocketM... 目录造成重复消费的原因解决方法生产者端消费者端代码实现造成重复消费的原因当系统的调用链路比较长的时

深度解析Nginx日志分析与499状态码问题解决

《深度解析Nginx日志分析与499状态码问题解决》在Web服务器运维和性能优化过程中,Nginx日志是排查问题的重要依据,本文将围绕Nginx日志分析、499状态码的成因、排查方法及解决方案展开讨论... 目录前言1. Nginx日志基础1.1 Nginx日志存放位置1.2 Nginx日志格式2. 499

kkFileView启动报错:报错2003端口占用的问题及解决

《kkFileView启动报错:报错2003端口占用的问题及解决》kkFileView启动报错因office组件2003端口未关闭,解决:查杀占用端口的进程,终止Java进程,使用shutdown.s... 目录原因解决总结kkFileViewjavascript启动报错启动office组件失败,请检查of

go动态限制并发数量的实现示例

《go动态限制并发数量的实现示例》本文主要介绍了Go并发控制方法,通过带缓冲通道和第三方库实现并发数量限制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录带有缓冲大小的通道使用第三方库其他控制并发的方法因为go从语言层面支持并发,所以面试百分百会问到

Go语言并发之通知退出机制的实现

《Go语言并发之通知退出机制的实现》本文主要介绍了Go语言并发之通知退出机制的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1、通知退出机制1.1 进程/main函数退出1.2 通过channel退出1.3 通过cont

Java Spring的依赖注入理解及@Autowired用法示例详解

《JavaSpring的依赖注入理解及@Autowired用法示例详解》文章介绍了Spring依赖注入(DI)的概念、三种实现方式(构造器、Setter、字段注入),区分了@Autowired(注入... 目录一、什么是依赖注入(DI)?1. 定义2. 举个例子二、依赖注入的几种方式1. 构造器注入(Con

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束

Go语言编译环境设置教程

《Go语言编译环境设置教程》Go语言支持高并发(goroutine)、自动垃圾回收,编译为跨平台二进制文件,云原生兼容且社区活跃,开发便捷,内置测试与vet工具辅助检测错误,依赖模块化管理,提升开发效... 目录Go语言优势下载 Go  配置编译环境配置 GOPROXYIDE 设置(VS Code)一些基本