之前用惯了Goland IDE,很好用,没有资金压力的可以考虑,或者继续...网上找方法,我是腻了重装找破解的,就转到了VS Code,发现其实现在VS Code对Golang的支持已经很不错了,就是自动补全和自动导包,有时候会卡下,当然研究这玩意怎么装也是很头疼,这里记下笔记。

一、下载安装 VS Code

1>下载

有User版和System版,具体两个版本是什么区别,我也不大清楚,只知道User版无法创建在系

统分区下。其他的要问下大神。。我暂且用的都是System版本

Golang安装包下载地址:https://studygolang.com/dl

2>安装

VSCode安装很简单,不要有中文路劲就行,一路下一步,就完成。 毕竟这只是框架,很简单。

golang需要注意下GOPATH和GOROOT路径,一般默认安装在GOROOT==>C:\\Go

GOPATH==>C:\\Users\\Administrator\\go

打开CMD,输入go version查看是否安装完成,没有完成请手动配置环境变量。


二、搭建Golang环境

这里说明下,截止目前 2020/12/03 09:28 我在网上找的,其他的配置环境的攻略,都不尽人意,在我即将放弃的时候,终于一步一步配置完成,其实真的很简单。

1>安装go支持和中文环境

按下Ctrl+Shift+x在应用商店中搜索 “go”,点击安装


2>继续搜索 "chinese" ,点击安装(英文好的可以忽略)


重启VS Code

3>配置代理

因国内访问默认服务缓慢,需修改代理设置,否则,基本操作4>会安装失败

代理网站:https://goproxy.cn/,里面有说明怎么设置。或者按以下操作

打开CMD 输入:

go env -w GO111MODULE=on

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

这里留个小细节在后面会说到:

go env -w GO111MODULE=on 这个是在go1.1.1版本之后才推出的。后面来解释这个是干嘛用的。

然后打开Vscode,点击左下角的齿轮--> setting --> 选择Go: Use Go Proxy To Check For Tool Updates,打上勾。


4>安装go插件

按下F1或者ctrl+shift+p,输入 “go install/Update Tools”,将插件全部勾选,点击确定。


提示下图,说明安装成功


这些插件着重设置的是gopls

打开设置,搜索 “Use Language Server”,并勾选上,然后进入settings.json


先将"settings.json"配置清空,然后复制一下内容,gopls的配置项很多,想探究的话可以深究一下。至此VS Code配置完成。可以去窗口main.go文件了

    "go.useLanguageServer": true,

    "[go]": {

        "editor.formatOnSave": true,

        "editor.codeActionsOnSave": {

            "source.organizeImports": true,

        }, // Optional: Disable snippets, as they conflict with completion ranking.    "editor.snippetSuggestions": "none", 

    },

    "[go.mod]": {

        "editor.formatOnSave": true,

        "editor.codeActionsOnSave": {

            "source.organizeImports": true,

        },

    },

    "go.trace.server": "verbose",

    "go.languageServerFlags": [

        "-remote=auto",

        "-logfile=auto",

        "-debug=:0",

        "-rpc.trace",

    ]

然后就配置好了。

5>运行报异常!

写代码的时候你发现,代码提示正常,自动补全包也正常,跳转到定义也正常,但是。。F5报错了。。如下:


其实这是因为我们开启了modules,在第三步的时候。你可以选择将它调成off,但是我不建议这么做,Golang未来是modules,使用VS Code的话gopls也是未来,简单来说modules比GOPATH更智能,能更好管理依赖。

至于,modules是什么,百度一下就知道了,它是在go 1.1.1版本以后发布的。

这里只说关于它的几个常用命令:

go mod init "项目名称"    // 初始化modules

在你的项目文件夹下,按住shift+鼠标右键,选择在此处打开命令窗口

输入go mod init "项目名称" 下图为 go mod init go_test,完成这部,再回到VS Code就正常了。


2 go mod tidy  //检测依赖

3 go mod download //下载依赖

6>吐槽

VS Code第一次索引包的时候,自动提示会卡一会。。其他都还好。

golint的警告实在是多。。。

不写注释,警告

命名不是驼峰,警告

字母没大写,警告

在setting.json中加如下的flags,然后手动修改一个警告的地方,以上警告都会消失。

    "go.lintFlags": [

        "-min_confidence=.8",

        "--disable=all",

        "--enable=errcheck"

        ],

写在结尾:好了,现在就可以正常使用VS Code编写Go了。写代码方面,我觉得还是比不上商业软件Goland,但是界面分辨率,我感觉还是VS Code好看,还有就是。。免费。。