window golang1.12.4 安装配置&IDE vscode
step 1:下载golang
golang官网地址是 https://golang.org/dl/ 如果没有墙的话,可以用这个地址 https://golang.google.cn/dl/ 如图:

安装方式分两种(如上图):
- msi 一键安装
- zip 解压缩手动安装 [推荐]
step 2:安装golang (下面是介绍zip解压缩的安装,msi安装的话直接点下一步即可)
- 解压go1.12.4.windows-amd64.zip到C盘,目录如图

- 配置环境变量GOROOT GOPATH 并设置好路径,编辑PATH新增 %GOROOT%\bin

- CMD验证安装,go version

step 3:下载并安装git ,后面go get 指令会用到
- 官网下载 https://git-scm.com/ 直接安装

step 4:下载并安装visual studio code
- 下载地址 https://code.visualstudio.com/
- 一直点下一步

step 5:配置visual studio code
- 安装插件 打开vscdoe 按F1进入控制面板,搜索 Extensions:Install Extension 安装
- 点击扩展,搜索go 安装go 0.10.0 或最新版插件

step 6:如果是go1.13及以后的版本执行指令:go env -w GOPROXY=https://goproxy.cn,direct 后面的安装基本就不需要墙&go get失败了
查看是否生效: go env

step 7:安装开发需要的组件和工具
- 打开vscode ,快捷键:ctrl+shift+p 搜索 Go: Install/Update Tools 安装 此过程可能需要墙,而且很慢
PS:这一步如果更新了golang的版本最好重新执行下,否则的话vscode写代码的时候可能会比较卡


安装这些工具最终目的是在%GOPATH%路径下生成对应的exe程序(在用vscode开发的时候会用到)如图

这些组件对应的git地址和用途如下表,部分更新失败的可单独在CMD用go get 地址 单独更新下,如:go get github.com/mdempsky/gocode
| 组件名 | 对应Git地址 | 功能 |
|---|---|---|
| gocode | github.com/mdempsky/gocode | 自动补全 |
| gopkgs | github.com/uudashr/gopkgs/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 | 查找所有引用 |
| gorename | golang.org/x/tools/cmd/gorename | 重命名符号 |
| dlv | github.com/go-delve/delve/cmd/dlv | 调试 |
| godef | github.com/rogpeppe/godef | 转到定义功能 |
| goreturns | github.com/sqs/goreturns | 格式化代码 |
| golint | golang.org/x/lint/golint | 用在命令行上命名的GO文件 |
| gotests | github.com/cweill/gotests/... | 生成单元测试 |
| gomodifytags | github.com/fatih/gomodifytags | 修改结构提上的标签 |
| impl | github.com/josharian/impl | 生成接口的存根 |
| fillstruct | github.com/davidrjenni/reftools/cmd/fillstruct | 用默认值填充结构文字 |
| goplay | github.com/haya14busa/goplay/cmd/goplay | GO后台运行当前文件 |
step 8:配置vscode参数
- settins.json 基本上不需要配置,用默认值就可以了。如需调整 文件 -->首选项 -->设置 输入go即可查看go相关配置
{
"git.ignoreLimitWarning": true,
"files.autoSave": "onFocusChange", //开启自动保存
"go.buildFlags": [],
"go.lintFlags": [],
"go.useCodeSnippetsOnFunctionSuggest": false,
"[go]": {
"editor.insertSpaces": false,
"editor.formatOnSave": true
},
"go.formatTool": "goreturns",
"go.goroot": "C:\\Go",
"go.gopath": "D:\\GoPath"
}
- launch.json配置,文件 -->打开文件 -->(选择GOPATH文件夹)
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch",
"type": "go",
"request": "launch",
"mode": "debug",
"remotePath": "",
//"port": 2345,
//"host": "127.0.0.1",
"program": "${fileDirname}", //workspaceRoot
"env": {},
"args": [],
"showLog": true
}
]
}
step 9: 写一个Helloworld
- 打开一个空的文件夹,创建main.go

- vscode默认会在跟目录下生成debug文件,如果要在window下部署或者需要在非go环境机器上运行的话需要生成exe,在文件夹下用cmd执行 go build -o demo.exe main.go
window golang1.12.4 安装配置&IDE vscode的更多相关文章
- mysql 5.7.12 winx64安装配置方法图文教程
这篇文章主要为大家分享了mysql 5.7.12winx64安装配置方法图文教程,感兴趣的朋友可以参考一下 之前安装mysql时未做总结,换新电脑,补上安装记录,安装的时候,找了些网友的安装记录, ...
- 大数据(12) - Scala安装与IDE相关配置
一 Scala简述 统计世界top100大学计算机系年级前三名,从初中开始编程,学过20多种语言,最后认为Scala最难.好了,我们开始享受这个过程把:). 二 Scala安装与配置 Scala需 ...
- ARPACK在window visual Studio的安装配置
ARPACK是一个求解大规模稠密/稀疏矩阵问题的库,最近在做特征值问题时用到.ARPACK这库相当古老,最早是RICE的一帮人弄的.LAPACK也差不多,貌似是美帝某个.gov发起的.这俩源代码是Fo ...
- Ubuntu 12.04 安装配置 Apache2
Apache2安装 1 我们使用root账户进行安装,首先切换到root账户,输入命令: sudo su 2 安装 Apache2 apt-get install apache2 在浏览器输入你服务器 ...
- Nginx-1.12.1安装配置
Nginx介绍 Nginx官网 nginx.org,最新版1.13,最新稳定版1.12 Nginx应用场景:web服务.反向代理.负载均衡 Nginx著名分支,淘宝基于Nginx开发的Tengine, ...
- hadoop-0.20.2安装配置
该环境在Vmware Workstation 12 上安装配置一共三台机器master,slave1,slave2. 操作系统:Cenos 7.0 hadoop 版本:hadoop-0.20.2,版本 ...
- 【转】android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创)
原文网址:http://www.cnblogs.com/zdz8207/archive/2012/11/27/android-ndk-install.html android 最新 NDK r8 在w ...
- android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创)
android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创) 一直想搞NDK开发却一直给其他事情耽搁了,参考了些网上的资料今天终于把 ...
- Android NDK r8 Cygwin CDT 在window下开发环境搭建 安装配置与使用 具体图文解说
版权声明:本博客全部文章均为原创.欢迎交流.欢迎转载:转载请勿篡改内容,而且注明出处,谢谢! https://blog.csdn.net/waldmer/article/details/3272500 ...
随机推荐
- ThinkPHP函数I代码优化
ThinkPHP/Common/common.php 文件 I函数,主要用来获取一些gpc请求的变量的,函数有一部分代码是过滤变量的,每次都运行一次,其实是没有必要的. 如果你每次都像这样的方式调用的 ...
- 传智 杨中科老师 ASP.NET 笔记
- Django API 为 D3 提供数据
在工作中见过有的人即便使用了Django,依然还在采取json或geojson的文件形式为页面提供数据,相当于嵌入数据而非加载.下面是个简单有效的例子: 先从 model.py 开始 # models ...
- Terrorist’s destroy HDU - 4679
Terrorist’s destroy HDU - 4679 There is a city which is built like a tree.A terrorist wants to destr ...
- PTA 数据结构——是否完全二叉搜索树
7-2 是否完全二叉搜索树 (30 分) 将一系列给定数字顺序插入一个初始为空的二叉搜索树(定义为左子树键值大,右子树键值小),你需要判断最后的树是否一棵完全二叉树,并且给出其层序遍历的结果. 输入格 ...
- [oldboy-django][1初识django]创建虚拟(干净)的Python环境
如果应用A需要jinja 2.7,而应用B需要jinja 2.6怎么办?此时可以针对不同应用创建不同的虚拟环境. 这种情况下,每个应用可能需要各自拥有一套“独立”的Python运行环境.virtual ...
- Spring框架annotation实现IOC介绍
Spring学习笔记(三) 续Spring 学习笔记(二)之后,对Spring框架的annotation实现方法进行整理 本文目录 @Autowire 1 @Autowire+@Qualifier t ...
- redis.clients.jedis.exceptions.JedisDataException: MISCONF Redis is configured to save RDB snapshots
最近在学习Redis ,在写test测试的时候碰到这个报错: redis.clients.jedis.exceptions.JedisDataException: MISCONF Redis is c ...
- 【bzoj4390】[Usaco2015 dec]Max Flow LCA
题目描述 Farmer John has installed a new system of N−1 pipes to transport milk between the N stalls in h ...
- HDU 5322 Hope ——NTT 分治 递推
发现可以推出递推式.(并不会) 然后化简一下,稍有常识的人都能看出这是一个NTT+分治的情况. 然而还有更巧妙的方法,直接化简一下递推就可以了. 太过巧妙,此处不表,建议大家找到那篇博客. 自行抄写 ...