【Golang】vscode 设置 go 开发环境
步骤
1. 始
Golang 语言开发选择一款合适的编辑器,能加速你敲字的灵感,这里推荐微软的 Visual Studio Code,简称 vscode。
2. 安装 go 插件
首先需要安装 go 语言插件,在 vscode 扩展中搜索 “go”,如下图,下载安装go插件


3. 设置 GOPROXY
如果想要 vscode 在 Go语言开发的时候为我们提供诸如代码提示、代码自动补全等功能,需要安装 go tools,但是安装 tools 需要设置 goproxy,否则会因为网络问题无法下载 tools 工具。
在此之前请先设置GOPROXY,打开终端执行以下命令:
go env -w GOPROXY=https://goproxy.cn,direct
4. 安装 Go语言开发工具包
安装 Golang Tools,按下 Ctrl/Cmd+P,输入> Go: Install/Update Tools,然后回车,选择你要安装的 tools 插件


5. 插件介绍
| tools 名称 | 用途 | |
|---|---|---|
| gocode | github.com/mdempsky/gocode | 代码自动完成 |
| gopkgs | github.com/uudashr/gopkgs/v2/cmd/gopkgs | 该工具为未导入的软件包提供自动补全功能 |
| go-outline | github.com/ramya-rao-a/go-outline | 此工具提供了文档大纲功能以及当前文件功能中的转到符号。 |
| go-symbols | github.com/acroca/go-symbols | 此工具提供了工作空间中的转到符号功能。 |
| guru | golang.org/x/tools/cmd/guru | 该工具提供查找参考和查找接口实现功能。 它也可用于通过设置提供转到定义 "go.docsTool"。 |
| gorename | golang.org/x/tools/cmd/gorename | 此工具提供了重命名符号功能。 |
| gotests | github.com/cweill/gotests/... | 该工具为Go: Generate Unit Tests命令集提供支持。 |
| gomodifytags | github.com/fatih/gomodifytags | 该工具支持Go: Add Tags to Struct Fields和Go: Remove Tags From Struct Fields命令。 |
| impl | github.com/josharian/impl | 该工具为Go: Generate Interface Stubs命令提供支持。 |
| fillstruct | github.com/davidrjenni/reftools/cmd/fillstruct | 该工具提供了对Go: Fill struct命令的支持。 |
| goplay | github.com/haya14busa/goplay/cmd/goplay | 该工具为Go: Run on Go Playground命令提供支持。 |
| godoctor | github.com/godoctor/godoctor | 该工具提供了重构功能。 它不支持Go模块,因此我们希望 gopls它将提供此功能(golang / go#37170)。 |
| dlv | github.com/go-delve/delve/cmd/dlv | 这是Go语言的调试器。它用于提供此扩展的调试功能。 |
| gocode-gomod | github.com/stamblerre/gocode | |
| goreturns | github.com/sqs/goreturns | |
| golint | golang.org/x/lint/golint |
6. 打开vscode设置


7. settings.json 配置
"go.inferGopath": true,
"go.autocompleteUnimportedPackages": true,
"go.gocodePackageLookupMode": "go",
"go.gotoSymbol.includeImports": true,
"go.useCodeSnippetsOnFunctionSuggest": true,
"go.useCodeSnippetsOnFunctionSuggestWithoutType": true,
"go.docsTool": "guru",

8. settings.json 参数介绍:
8.1 跳转到定义
- go.docsTools:这里有三个选项,默认使用 gogetdoc,不知为何我这里选择之后无法使用
ctrl/cmd +鼠标左键点击跳转函数或者源码,于是我选择了 guru

参考链接:
https://github.com/microsoft/vscode-go
https://github.com/golang/vscode-go
https://github.com/golang/vscode-go/blob/master/docs/tools.md
【Golang】vscode 设置 go 开发环境的更多相关文章
- win10+vscode部署java开发环境
目录 Java开发插件配置: 调试: 快捷键: 启动配置文件launch.json: 启动配置说明: Launch: Attach: User Setting: 遇到的问题: 参考: Java开发插件 ...
- VSCode配置JAVA开发环境
VSCode配置JAVA开发环境 1:给机器安装JDK.MAVEN 下载JDK 下载路径:https://www.oracle.com/technetwork/java/javase/download ...
- 2019-04-03 Anaconda+VSCode搭建python开发环境,并连接GIthub
1.最好的Python开发环境 :Anaconda+VSCode搭建python开发环境,conda提供了python开发环境和大量的你不用安装的库 conda的环境变量: 直接在conda 中下载启 ...
- 使用Vscode进行Python开发环境配置
Vscode是是一个强大的跨平台工具,我自己电脑是mac,公司电脑是win而且是内部环境,导致公司安装软件很费劲.好在vscode许多插件能直接离线安装,省去了很多麻烦. 很多人学习python,不知 ...
- 如何设置Java开发环境
傻瓜式 设置Java开发环境 跟我来. 对与win7操作系统.有两种方法. 第一种: 1.下载JDK,完成安装. 2.右键我的电脑,选择属性,在左边找到高级系统设置左键单击打开,在高级选项中找到 环境 ...
- 升级设置win2008r2开发环境,遇到问题小结
升级设置2008r2开发环境,是一般程序员经历的事情.许多从vs 2003,vs2005+sql2000+win2003过来,但是,时间推移,技术革新,64位的推行.架构的变化和强大.我们也只可以学习 ...
- 安装Golang 1.6及开发环境
安装Golang 1.6及开发环境=====================================> 下载软件 * go1.4.2.linux-amd64.tar.gz ...
- VSCode+Maven+Hadoop开发环境搭建
在Maven插件的帮助下,VSCode写Java其实非常方便.这一讲我们介绍如何借助maven用VScode搭建Hadoop开发环境. 1.Java环境安装 首先我们需要搭建好Java开发环境.我们需 ...
- 基于windows环境VsCode的ESP32开发环境搭建
1. 基于windows环境VsCode的ESP32开发环境搭建,网上有各类教程,但是我实测却不行. 例如我在vscode内安装的乐鑫插件,扩展配置项是下图这样: 而百度的各类博文却都是这样: 经过网 ...
随机推荐
- throw throws try catch finally return
throw throw 语句用于抛出异常,例如 throw new EOFException(). throws 当使用throw 语句抛出checked 异常后,可以不用捕获异常并处理,而是使用 ...
- 014 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 08 “字符型”字面值
014 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 08 "字符型"字面值 字符型 字面值如何表示? 两个关键:单引号(必须是英文单引号). ...
- MySql查询语句中的变量使用
前言 今日在LeetCode刷MySql的题,遇到一题,题目到没什么,解答完了之后习惯去看此题的题解,有位大佬的思路让博主感觉很惊艳,至此,特地记录学习一下. 题目 解答 乍一看题目也没啥,分数排名, ...
- Charles 模拟弱网
1.Charles安装方法: 1)在官网下载安装: 2)输入如下注册码破解,Charles 4.2.7 目前版本,可用. Registered Name: https://zhile.io ...
- Android和CraigDJ
下载HTML source - 46.8 KB 下载APK - 8.1 MB Introduction 大家好,欢迎来到我的Android应用程序项目! 我必须承认,我仍然对原生安卓环境几乎一无所知 ...
- RHSA-2018:0395-重要: 内核 安全和BUG修复更新(需要重启、本地提权、代码执行)
[root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) 修复命令: 使用root账号登陆She ...
- JVM性能调优(3) —— 内存分配和垃圾回收调优
前序文章: JVM性能调优(1) -- JVM内存模型和类加载运行机制 JVM性能调优(2) -- 垃圾回收器和回收策略 一.内存调优的目标 新生代的垃圾回收是比较简单的,Eden区满了无法分配新对象 ...
- devops-jenkins分布式构建
1. devops-jenkins分布式构建 1) 点击系统管理 进入节点管理 2) 点击新建节点 3) 进行节点配置在node节点服务器配置,进行java的安装 [root@nginx-backup ...
- linux块设备驱动---相关结构体(转)
上回最后面介绍了相关数据结构,下面再详细介绍 块设备对象结构 block_device 内核用结构block_device实例代表一个块设备对象,如:整个硬盘或特定分区.如果该结构代表一个分区,则其成 ...
- HTTP 【一文看清所有概念】
HTTP 标头 HTTP 1.1 的标头主要分为四种,通用标头.实体标头.请求标头.响应标头,现在我们来对这几种标头进行介绍 通用标头 HTTP 通用标头之所以这样命名,是因为与其他三个类别不同,它们 ...