内容简介:在vscode中使用golang时,经常会出现安装第三方工具的时候失败的问题,一般来说都是下载了go get默认使用git来作为版本管理工具,如果对git设置了代理能否下载成功呢?很遗憾,即使你对git设置了代理,也无法成功的下载安装
在vscode中使用golang时,经常会出现安装第三方 工具 的时候失败的问题,一般来说都是下载了 golang.org/x/...
下面的包或者要下载的工具依赖于 golang.org/x/...
的包所导致的,在国内是不会很顺利的下载和安装的。
Installing github.com/mdempsky/gocode FAILED Installing github.com/uudashr/gopkgs/cmd/gopkgs FAILED Installing github.com/ramya-rao-a/go-outline FAILED Installing github.com/acroca/go-symbols FAILED Installing golang.org/x/tools/cmd/guru FAILED Installing golang.org/x/tools/cmd/gorename FAILED Installing github.com/go-delve/delve/cmd/dlv FAILED Installing github.com/rogpeppe/godef FAILED Installing golang.org/x/tools/cmd/goimports FAILED Installing golang.org/x/lint/golint FAILED
go get默认使用git来作为版本管理工具,如果对git设置了代理能否下载成功呢?
git config --global http.proxy 'http://127.0.0.1:8123' git config --global https.proxy 'http://127.0.0.1:8123'
很遗憾,即使你对git设置了代理,也无法成功的下载安装 golang.org
下的包,假如你要安装 golang.org/x/tools/cmd/guru
这个包,当你使用go get去下载安装包时,首先会访问 https://golang.org/x/tools/cmd/guru?go-get=1
这个url来获取版本库的类型,是git还是svn或者其他的版本管理工具,这个http请求是git之外的,所以这有对这个http请求设置了代理,然后对git设置代理,才能成功的下载安装该库。
# 在终端中执行 export https_proxy=http://127.0.0.1:8123 export http_proxy=http://127.0.0.1:8123 git config --global http.proxy 'http://127.0.0.1:8123' git config --global https.proxy 'http://127.0.0.1:8123'
前提是你拥有一个http或者socks代理,如果没有的话,还是老老实实的在 github.com/golang/...
上下载对应的包然后进行替换吧。
设置了代理之后,再次执行go get命令:
go get -v github.com/acroca/go-symbols golang.org/x/tools/go/buildutil # golang.org/x/tools/go/buildutil Workbench/golang/src/golang.org/x/tools/go/buildutil/buildutil_go16.go:14:38: undefined: build.AllowVendor
这次又出错了,原因应该是 golang.org/x/tools/go/buildutil
包太老了,直接更新相关的依赖包即可:
go get -v -u github.com/acroca/go-symbols github.com/acroca/go-symbols (download) Fetching https://golang.org/x/tools/go/buildutil?go-get=1 Parsing meta tags from https://golang.org/x/tools/go/buildutil?go-get=1 (status code 200) get "golang.org/x/tools/go/buildutil": found meta tag get.metaImport{Prefix:"golang.org/x/tools", VCS:"git", RepoRoot:"https://go.googlesource.com/tools"} at https://golang.org/x/tools/go/buildutil?go-get=1 get "golang.org/x/tools/go/buildutil": verifying non-authoritative meta tag Fetching https://golang.org/x/tools?go-get=1 Parsing meta tags from https://golang.org/x/tools?go-get=1 (status code 200) package golang.org/x/tools/go/buildutil: golang.org/x/tools is a custom import path for https://go.googlesource.com/tools, but /home/lu/Workbench/golang/src/golang.org/x/tools is checked out from https://github.com/golang/tools
这次就成功更新并安装了,重启vscode,各项功能也正常了。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Java 静态代理和动态代理的使用及原理解析
- 使用Nginx代理上网
- 使用shadowtunnel配置多级代理
- 使用 Javassist 实现动态代理
- 使用Nginx做反向代理,设置请求返回时带上被代理机器的信息
- 使用 AJP 方式配置反向代理
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
PHP and MySQL Web Development
Luke Welling、Laura Thomson / Sams / July 25, 2007 / $49.99
Book Description PHP and MySQL Web Development teaches you to develop dynamic, secure, commerical Web sites. Using the same accessible, popular teaching style of the three previous editions, this b......一起来看看 《PHP and MySQL Web Development》 这本书的介绍吧!