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 ...
随机推荐
- mysql中的FROM_UNIXTIME()函数和UNIX_TIMESTAMP()函数
unix_timestamp 是时间戳,可以用数据库里的存储时间数据的字段 from_unixtime 是将时间戳格式化为你想要时间
- Elizabeth Taylor【伊丽莎白·泰勒】
Elizabeth Taylor People fell in love with Elizabeth Taylor in 1944, when she acted in the movie Nati ...
- B1007 素数对猜想
B1007 素数对猜想 让我们定义\(d_n\)为:\(d_n =p_{n+1}−p_n\),其中\(p_i\)是第i个素数.显然有\(d_1=1\),且对于n>1有\(d_n\)是偶数.&qu ...
- mysql-不恰当的update语句使用主键和索引导致mysql死锁
背景知识:MySQL有三种锁的级别:页级.表级.行级. MyISAM和MEMORY存储引擎采用的是表级锁(table-level locking):BDB存储引擎采用的是页面锁(page-level ...
- python上数据存储 .h5格式或者h5py
最近在做城市计算的项目,数据文件是以.h5的格式存储的,总结下其用法和特点 来自百度百科的简介: HDF(Hierarchical Data Format),可以存储不同类型的图像和数码数据的文件格式 ...
- FreeMarker的基础语法使用 && 心得和技巧
FreeMarker语言 FreeMarker语言概述 FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写. FreeMarker被设计用来生成HTML Web ...
- 转载: CRichEditCtrl使用大全
richedit 常见使用问题 一.常见问题 a.可以编译,不能执行的 在需要在相应的对话框中加上InitInstance(void)函数中添加 AfxInitRichEdit(); b.升级默认的R ...
- dib build ipa image Injection password
针对dib制作的deploy image,注入密码有两种方式: devuser/dynamic-login .对应 dib 添加密码,是通过 dynamic-login element 来完成的. 首 ...
- LFTP下载远程文件
拓展阅读: https://linux.cn/article-5460-1.html
- Event Loop详解
1.进程,单线程与多线 进程: 运行的程序就是一个进程,比如你正在运行的浏览器,它会有一个进程. 线程: 程序中独立运行的代码段. 一个进程由单个或多个线程组成,线程是负责执行代码的. 2.单线程与多 ...