步骤

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. throw throws try catch finally return

    throw throw 语句用于抛出异常,例如 throw new EOFException().   throws 当使用throw 语句抛出checked 异常后,可以不用捕获异常并处理,而是使用 ...

  2. 014 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 08 “字符型”字面值

    014 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 08 "字符型"字面值 字符型 字面值如何表示? 两个关键:单引号(必须是英文单引号). ...

  3. MySql查询语句中的变量使用

    前言 今日在LeetCode刷MySql的题,遇到一题,题目到没什么,解答完了之后习惯去看此题的题解,有位大佬的思路让博主感觉很惊艳,至此,特地记录学习一下. 题目 解答 乍一看题目也没啥,分数排名, ...

  4. Charles 模拟弱网

    1.Charles安装方法: 1)在官网下载安装: 2)输入如下注册码破解,Charles 4.2.7 目前版本,可用. Registered Name: https://zhile.io       ...

  5. Android和CraigDJ

    下载HTML source - 46.8 KB 下载APK - 8.1 MB Introduction  大家好,欢迎来到我的Android应用程序项目! 我必须承认,我仍然对原生安卓环境几乎一无所知 ...

  6. RHSA-2018:0395-重要: 内核 安全和BUG修复更新(需要重启、本地提权、代码执行)

    [root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) 修复命令: 使用root账号登陆She ...

  7. JVM性能调优(3) —— 内存分配和垃圾回收调优

    前序文章: JVM性能调优(1) -- JVM内存模型和类加载运行机制 JVM性能调优(2) -- 垃圾回收器和回收策略 一.内存调优的目标 新生代的垃圾回收是比较简单的,Eden区满了无法分配新对象 ...

  8. devops-jenkins分布式构建

    1. devops-jenkins分布式构建 1) 点击系统管理 进入节点管理 2) 点击新建节点 3) 进行节点配置在node节点服务器配置,进行java的安装 [root@nginx-backup ...

  9. linux块设备驱动---相关结构体(转)

    上回最后面介绍了相关数据结构,下面再详细介绍 块设备对象结构 block_device 内核用结构block_device实例代表一个块设备对象,如:整个硬盘或特定分区.如果该结构代表一个分区,则其成 ...

  10. HTTP 【一文看清所有概念】

    HTTP 标头 HTTP 1.1 的标头主要分为四种,通用标头.实体标头.请求标头.响应标头,现在我们来对这几种标头进行介绍 通用标头 HTTP 通用标头之所以这样命名,是因为与其他三个类别不同,它们 ...