步骤

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 FieldsGo: 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

https://golang.google.cn/

【Golang】vscode 设置 go 开发环境的更多相关文章

  1. win10+vscode部署java开发环境

    目录 Java开发插件配置: 调试: 快捷键: 启动配置文件launch.json: 启动配置说明: Launch: Attach: User Setting: 遇到的问题: 参考: Java开发插件 ...

  2. VSCode配置JAVA开发环境

    VSCode配置JAVA开发环境 1:给机器安装JDK.MAVEN 下载JDK 下载路径:https://www.oracle.com/technetwork/java/javase/download ...

  3. 2019-04-03 Anaconda+VSCode搭建python开发环境,并连接GIthub

    1.最好的Python开发环境 :Anaconda+VSCode搭建python开发环境,conda提供了python开发环境和大量的你不用安装的库 conda的环境变量: 直接在conda 中下载启 ...

  4. 使用Vscode进行Python开发环境配置

    Vscode是是一个强大的跨平台工具,我自己电脑是mac,公司电脑是win而且是内部环境,导致公司安装软件很费劲.好在vscode许多插件能直接离线安装,省去了很多麻烦. 很多人学习python,不知 ...

  5. 如何设置Java开发环境

    傻瓜式 设置Java开发环境 跟我来. 对与win7操作系统.有两种方法. 第一种: 1.下载JDK,完成安装. 2.右键我的电脑,选择属性,在左边找到高级系统设置左键单击打开,在高级选项中找到 环境 ...

  6. 升级设置win2008r2开发环境,遇到问题小结

    升级设置2008r2开发环境,是一般程序员经历的事情.许多从vs 2003,vs2005+sql2000+win2003过来,但是,时间推移,技术革新,64位的推行.架构的变化和强大.我们也只可以学习 ...

  7. 安装Golang 1.6及开发环境

    安装Golang 1.6及开发环境=====================================> 下载软件    * go1.4.2.linux-amd64.tar.gz     ...

  8. VSCode+Maven+Hadoop开发环境搭建

    在Maven插件的帮助下,VSCode写Java其实非常方便.这一讲我们介绍如何借助maven用VScode搭建Hadoop开发环境. 1.Java环境安装 首先我们需要搭建好Java开发环境.我们需 ...

  9. 基于windows环境VsCode的ESP32开发环境搭建

    1. 基于windows环境VsCode的ESP32开发环境搭建,网上有各类教程,但是我实测却不行. 例如我在vscode内安装的乐鑫插件,扩展配置项是下图这样: 而百度的各类博文却都是这样: 经过网 ...

随机推荐

  1. noSql 的应用场景简述

    选型一定要结合实际情况而不是照本宣科,比如: 企业发展之初,明明一个关系型数据库就能搞定且支撑一年的架构,搞一套大而全的技术方案出来 有一些数据条件查询多,更适合使用ElasticSearch做存储降 ...

  2. java进阶(23)--List接口

    一.基本概念 1.有序可重复 2.有下标 3.包含ArraList.LinkedList.Vector   二.List中特有的方法 且常用 (以下军均为数组通用方法) 1.void add(int ...

  3. Spring 注解形式AOP

    AOP 面向切面编程,通过预编译的方式,在运行期通过动态代理实现一种技术,AOP可实现业务与切面的逻辑分离,降低耦合度 一.注解形式的AOP Aspect:切面 Joinpoint:连接点,要拦截的方 ...

  4. safari 浏览器版本升级后提示“此网页出现问题,已重新载入网页” 解决办法

    safari回退条件 版本回退的前提是关闭电脑的SIP机制,命令行 csrutil status 检测状态.Mac os 10.14以下版本回退Safari后插件还是可以用的,升了新系统退了也没法用了 ...

  5. Java高级特性1_流库_初体验

    Java高级特性流库_初体验 面对结果编程 在编程里, 有两种编程方式, 一种是面对过程编程, 一种是面对结果编程. 两者区别如下 面向过程编程 面向过程编程需要编程程序让程序依次执行得到自己想要的结 ...

  6. Serial.begin

    串口波特率的设置:通常我们使用Serial.begin(speed)来完成串口的初始化,这种方式,只能配置串口的波特率. 使用Serial.begin(speed, config)可以配置数据位.校验 ...

  7. HTML & CSS & JavaScript 从一个表格到一个灰阶颜色表 03

    工具1:HBuilder X 1.9.9.20190522 工具2:火狐浏览器 67.0.4 (64 位) 其实,我还想使用表格,做一个这样的颜色表,如下图所示: 如果按照之前的做法,把每一种颜色都列 ...

  8. Linux中的硬链接和软连接

    1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link).默认情况下,ln命令产生硬链接. [硬连接]硬连接指通过索引节点 ...

  9. 【题解】CF413C Jeopardy!

    \(\color{blue}{Link}\) \(\text{Solution:}\) 首先,显然的策略是把一定不能翻倍的先加进来.继续考虑下一步操作. 考虑\(x,y\)两个可以翻倍的物品,且\(a ...

  10. springboot利用redis做缓存

    首先 配置redis redis: password: 123456 host: 127.0.0.1 port: 6379 #103.249.252.109:10086 expireSeconds: ...