Go安装、配置和vsCode配置Go

go的安装与配置

go下载

go语言官方下载地址:https://golang.google.cn/dl/

go标准库地址**:** https://pkg.go.dev/

go标准库中文文档:https://studygolang.com/pkgdoc

go中文学习文档:https://golang.halfiisland.com/guide.html

go安装

安装过程省略,默认安装路径C:\Go即可。

go环境变量配置

  1. 配置GOROOT: C:\Go\ -------go的环境地址

  2. 配置GOPATH: E:\go\src\Go(我自己配置的地址) --------go的工作目录的地址

  3. 在环境变量Path中添加C:\Go\bin路径

查看是否安装成功

go env (查看GOPATH和GOROOT的路径是否配置成功)


vsCode的安装与配置

vsCode下载

https://code.visualstudio.com/

安装过程省略。

vsCode下载安装Go插件

如图所示,输入关键字Go后,点击install即可

vsCode配置Go插件

如图所示,点击设置按钮

输入gopath如图所示,点击"Edit in setting.json"

进行如图配置 其中go语言环境安装目录和工作目录的路径根据自己的实际情况填写即可

至此配置完毕 重启即可


问题1:

我们打开vsCode后会提示我们好多库安装失败,错误如下所示:

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 SUCCEEDED

Installing github.com/stamblerre/gocode FAILED

...

失败原因:

golang.org 在国内由于一些原因无法直接访问,而go get在获取gocode、go-def、golint等插件依赖工具的源码时,需要从 golang.org 上拉取部分代码至GOPATH,自然就导致了最后这些依赖于 golang.org 代码的依赖工具安装失败。

解决方法:

在GOPATH目录下,建立src\golang.org\x目录,通过终端进入x目录,执行:

git clone https://github.com/golang/tools.git tools

git clone https://github.com/golang/lint.git lint

git clone https://github.com/golang/sync.git sync

git完成后,重新install还是会报以下错误:

go: github.com/yuin/goldmark@v1.1.32: Get "https://proxy.golang.org/github.com/yuin/goldmark/@v/v1.1.32.mod": dial tcp 34.64.4.113:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.

...

问题原因:

由于墙的原因,无法直接更新。

解决方案(亲测有效):

通过设置 GOPRIVATE 环境变量来控制哪些私有仓库和依赖(公司内部仓库)不通过 proxy 来拉取,直接走本地。设置如下:

go env -w GOPROXY=https://goproxy.io,direct # 设置不走 proxy 的私有仓库,多个用逗号相隔

go env -w GOPRIVATE=*.corp.example.com

配置完毕后,重新安装,成功!

部分参考:

https://blog.csdn.net/qq_35566365/article/details/100598621

相关推荐
超级架构师38 分钟前
PRAXO-CORE 2.5.0:用 conformance 和显式边界构建 Go Agent 框架
开发语言·人工智能·后端·golang·ai编程·智能体框架·praxo-core
叼烟扛炮1 小时前
Linux 学习笔记(四十三):网络编程进阶——自定义协议解决 TCP 粘包与守护进程
linux·开发语言·网络·笔记·tcp/ip
LMT流氓兔2 小时前
第五单元——第十六课:给书店助手加上网页界面
java·开发语言·jvm·人工智能·oracle·langchain·1024程序员节
专注仿真2 小时前
梯度提升类(XFBoost)算法详解与代码实例
开发语言·人工智能·python·算法·大模型训练·控制算法
外收内放2 小时前
Python基础语法练习题(75)
开发语言·python·学习
starzy19903 小时前
Scala循环与判断:一切皆表达式的控制流
开发语言·人工智能·scala
starzy19903 小时前
Scala类和对象:从构造器到样例类的完整指南
开发语言·后端·scala
niucloud-admin4 小时前
NIUCLOUD PHP SAAS上门家政使用文档--服务订单:订单列表
开发语言·php
怪我冷i4 小时前
Rust 的impl语法详解
开发语言·后端·rust
qq_406981034 小时前
c++的decltype是什么
开发语言·c++