golang之vscode环境配置
go语言开发,选择vscode作为IDE工具也是一个不错的选择,毕竟goland收费,老是破解也挺麻烦,除了这点,不过说实话挺好用的。vscode的话相对来说就毕竟原始,适合初学者。
1、vscode首先需要安装go语言插件,在vscode扩展中搜索“go”,如下图,下载安装go插件

2、vscode环境配置
打开vscode设置,菜单File -> Preferences -> Settings,Extensions=>Go configuration找到GoPath设置项,选择Edit in setting.json

设置GoPath(go工作路径)和GoRoot(go安装包路径)路径,如下图

3、vscode会自动弹框提示安装其他插件(编写go代码时),如下图,选择InstallAll


不过由于网络限制问,基本是安装不成功

解决办法一:手动下载安装
以github.com开头的,如下这些,在src目录下创建一个目录,命名为github
Installing github.com/mdempsky/gocode FAILED
Installing github.com/uudashr/gopkgs/cmd/gopkgs FAILED
Installing github.com/ramya-rao-a/go-outline FAILED
Installing github.com/acroca/go-symbols FAILED
Installing github.com/cweill/gotests/... FAILED
Installing github.com/fatih/gomodifytags FAILED
Installing github.com/josharian/impl FAILED
Installing github.com/davidrjenni/reftools/cmd/fillstruct FAILED
Installing github.com/haya14busa/goplay/cmd/goplay FAILED
Installing github.com/godoctor/godoctor FAILED
Installing github.com/go-delve/delve/cmd/dlv FAILED
Installing github.com/stamblerre/gocode FAILED
Installing github.com/rogpeppe/godef FAILED
Installing github.com/sqs/goreturns FAILED
在src/github目录下,git clone下载这安装失败的插件
git clone https://github.com/mdempsky/gocode
git clone https://github.com/uudashr/gopkgs
git clone https://github.com/ramya-rao-a/go-outline
git clone https://github.com/acroca/go-symbols
git clone https://github.com/cweill/gotests
git clone https://github.com/fatih/gomodifytags
git clone https://github.com/josharian/impl
git clone https://github.com/davidrjenni/reftools
git clone https://github.com/haya14busa/goplay
git clone https://github.com/godoctor/godoctor
git clone https://github.com/go-delve/delve
git clone https://github.com/stamblerre/gocode
git clone https://github.com/rogpeppe/godef
git clone https://github.com/sqs/goreturns
下载成功后,再在src目录下新建一个github.com目录,把上面下载的插件安按照按照失败提示信息放到相应目录下,注意路径一定要和前面提示的路径一致,如下图

然后在src目录下执行go install命令生成可执行文件
go install github.com/mdempsky/gocode
go install github.com/uudashr/gopkgs/cmd/gopkgs
go install github.com/ramya-rao-a/go-outline
go install github.com/acroca/go-symbols
go install github.com/cweill/gotests/...
go install github.com/fatih/gomodifytags
go install github.com/josharian/impl
go install github.com/davidrjenni/reftools/cmd/fillstruct
go install github.com/haya14busa/goplay/cmd/goplay
go install github.com/godoctor/godoctor
go install github.com/go-delve/delve/cmd/dlv
go install github.com/stamblerre/gocode
go install github.com/rogpeppe/godef
go install github.com/sqs/goreturns
生成的可执行文件如下:

对应golang.org/x/开的插件,在src目录下新建目录golang.org\x,然后去github go官方地址https://github.com/golang,找到对应插件库下载下来即可,目前暂时要用到的只有tools和lint库,地址如下,以后开发中遇到“golang.org/x”库缺少的情况,都可以这样解决
git clone https://github.com/golang/tools.git
git clone https://github.com/golang/lint.git
下载下来后如下,

在src目录下执行如下命令:
go install golang.org/x/tools/cmd/guru
go install golang.org/x/tools/cmd/gorename
go install golang.org/x/lint/golint

会在go工作目录bin下生成相应的可执行文件,如下图

这个办法比较繁琐
另外一个解决办法,是使用gopm包管理工具安装
安装gopm:
go get -u github.com/gpmgo/gopm

试着使用gopm get命令拉去,报错如下:

有经验的话,很明显就可以判断是gopm可执行文件路径未加入到系统环境变量path中

gopm命令默认存放在GOPATH(go工作环境)下的bin文件下,把这个路径加入到系统环境变量path中即可,

需要重新启一下终端(cmd或者vscode),然后在src目录下使用gopm get -l 拉取依赖包到当前目录,执行如下命令:
gopm get -l github.com/mdempsky/gocode
gopm get -l github.com/uudashr/gopkgs/cmd/gopkgs
gopm get -l github.com/ramya-rao-a/go-outline
gopm get -l github.com/acroca/go-symbols
gopm get -l github.com/cweill/gotests/...
gopm get -l github.com/fatih/gomodifytags
gopm get -l github.com/josharian/impl
gopm get -l github.com/davidrjenni/reftools/cmd/fillstruct
gopm get -l github.com/haya14busa/goplay/cmd/goplay
gopm get -l github.com/godoctor/godoctor
gopm get -l github.com/go-delve/delve/cmd/dlv
gopm get -l github.com/stamblerre/gocode
gopm get -l github.com/rogpeppe/godef
gopm get -l github.com/sqs/goreturns
gopm get -l golang.org/x/tools/cmd/guru
gopm get -l golang.org/x/tools/cmd/gorename
gopm get -l golang.org/x/lint/golint
下载完成后,看了下src/bin目录下没有生产可执行文件,手动go install 一下
go install github.com/mdempsky/gocode
go install github.com/uudashr/gopkgs/cmd/gopkgs
go install github.com/ramya-rao-a/go-outline
go install github.com/acroca/go-symbols
go install github.com/fatih/gomodifytags
go install github.com/josharian/impl
go install github.com/davidrjenni/reftools/cmd/fillstruct
go install github.com/haya14busa/goplay/cmd/goplay
go install github.com/godoctor/godoctor
go install github.com/go-delve/delve/cmd/dlv
go install github.com/stamblerre/gocode
go install github.com/rogpeppe/godef
go install github.com/sqs/goreturns
go install golang.org/x/tools/cmd/guru
go install golang.org/x/tools/cmd/gorename
go install golang.org/x/lint/golint
至此vscode golang环境安装好了
把我按在好的包放在github上了,地址:https://github.com/marshhu/golang-package 需要的可以直接下载下来
golang之vscode环境配置的更多相关文章
- 免安装方式的Python之VSCode环境配置
概述 本文旨在介绍免安装方式,在VSCode中搭建Python(3.73)的配置环境.至于Python是什么.它能做些什么,诸如此类的介绍均不在此文中介绍,相信能看此文的人,多多少少都会有些了解. V ...
- mac系统vscode环境配置,以及iTerm2配置Zsh + on-my-zsh shell
https://segmentfault.com/a/1190000013612471?utm_source=tag-newest https://ohmyz.sh/ 一:安装iTerm2终端 htt ...
- Golang的开发环境配置之SlickEdit篇
Golang的开发环境通常有如下三种: 1. vi, emacs, notepad++ 2. Sublime Text 2/3 3. LiteIDE 不过,今天我想体验一下在slickedit当中使用 ...
- golang安装开发环境配置
本机系统:fedora28 step 1 百度搜索 golang 到 go 语言中文网,下载 golang 包,如果是 linux 系统可以直接点击此连接,也可去 go 语言中文网, https:// ...
- 初识Typescript及vscode环境配置
什么是typescript?为什么要用它? typescript简称ts,是js语法的一个超级,由微软团队维护的 js特点(不足) 弱类型:js中的数据变量没有确定的类型,可以存储对象,可以存储数字, ...
- vscode环境配置(二)——C Program Debug
一.任务准备 launch.json { "version": "0.2.0", "configurations": [ { "n ...
- vscode环境配置
"go.goroot": "/home/ken/go", "go.gopath": "/home/ken/gopath" ...
- vscode环境配置(三)——解决控制台终端中文输出乱码
由于系统终端默认编码为GBK,所以需要修改为UTF-8 方法一 打开cmd输入chcp查看编码格式,查看以及修改如下图所示: 方法二
- vscode环境配置(一)——C Program运行
ctrl + shift +p 打开应用商店 搜索 C/C++ 和 Code Runner(一键编译运行)
随机推荐
- 淼一淼A+B problem
鲁迅:这可是道难题呢! 鲁迅:我没说过这话,不过确实在理. 某改题毕,但见LOJ之上有数「A+B」之AC记录.余亦尝闻A+B之趣味无穷,遂兴起而码之. 少顷,AC之,吾心所畅. #include< ...
- Vue生命周期的执行过程(面试必备) 极简版
最近准备面试,临时抱佛脚的来回顾一下vue相关的面试题,当然这是不对的,平时还是要努力呀,走起: 1.创建vue实例,Vue(); 2.在创建Vue实例的时候,执行了init(),在init过程中首先 ...
- 洛谷P5104 红包发红包
题目链接: P5104 题目分析: 题目和\(n\)是没什么关系的,因为是\(n\)个人抢,其实不一定抢完 其实很显然--就是求一个连续型随机变量的期望 首先设一个随机变量\(X\),表示第一个人拿到 ...
- poi 3669 meteor shower (bfs)
题目链接:http://poj.org/problem?id=3669 很基础的一道bfs的题,然而,我却mle了好多次,并且第二天才发现错在了哪里_(:з)∠)_ 写bfs或者dfs一定要记得对走过 ...
- Jmeter性能测试(第三篇)
一.调通脚本(以json串Post接口为例)添加聚合报告(线程组->添加->监听器->聚合报告)并调试好需要压测的脚本,如下已经调通的P_C_B151就是我需要压测的脚本 二.设置场 ...
- vue 全局过滤器(单个和多个过滤器)
参考: https://www.cnblogs.com/liujn0829/p/8622960.htmlhttps://blog.csdn.net/z8735058/article/details/7 ...
- 跟我一起了解koa之koa洋葱圈模型(二)
根据上篇博文的博文,继续接下来我们实现的洋葱圈模型的实现 新建middleware文件夹 //m1.js function m1(ctx){ global.console.log('m1') } mo ...
- 02.Hibernate配置文件之映射配置文件
映射文件,即xxx.hbm.xml的配置文件 <class>标签:用来将类与数据库表建立映射关系 属性: name:类中的全路径 table:表名(如果类与表名一致,那么table属性可以 ...
- MySQL系列(十一)--外键约束foreign key的基本使用
有些时候,为了保证数据的完整性,我们会选择的使用外键约束,例如教师对应的表和课程表中老师的id,这种时候就要使用外键约束了. PS:这里不考虑表结构设计,三范式与反范式等设计问题,基于MySQL8.0 ...
- BZOJ 1822[JSOI2010]Frozen Nova 冷冻波
网络流+二分. n^3枚举判断每个巫妖可以攻击的精灵,向其连1的边,每个精灵向汇点连1的边. 二分答案,修改源点流向每个巫妖的cap,跑最大流看是否等于精灵数. 恩,看起来没什么毛病. 然后狂WA不止 ...