由于对Docker+kubernetes的使用及持续关注,要理解这个平台的原理,势必需要对golang有一定的理解,基于此开始利用业余时间学习go,基础语法看完之后,搭建开发环境肯定是第一步,虽然能g到一大把,go中文社区也有相关帖子很多,但这里还是记录一下方便查找,同时在搭建过程中也遇到两个g出来的帖子没提到的问题,一并记录。


Step1:准备各种安装包

1: Visual Studio Code

目前最新版本1.7.2,下载地址:https://code.visualstudio.com/Download

2:Go API

目前最新版本1.7.3,官方下载地址:https://golang.org/dl/ ,国内下载地址:http://www.golangtc.com/download

3:Git

安装Git工具,目前最新版本2.10.2,下载地址:https://git-for-windows.github.io/ ,下载安装即可;

4:Go工具包,包含智能提示,索引,包等等(也可以在VS code中自动安装,但我只成功安装了5个,其它8个都失败)

工具包包含数个开发工具,下载地址:https://github.com/golang/tools ,下载zip包即可

5:Go调试工具

工具用于Go代码的Debug,下载地址:https://github.com/derekparker/delve ,同样下载zip包即可

6:Go命令行编辑器(可选,可不装)

下载地址:https://github.com/peterh/liner ,下载zip包即可

7:Go测试工具(VS Code在Debug模式下会提醒安装该组件,如自动安装失败,可下载安装)

下载地址:https://github.com/cweill/gotests ,下载zip包即可


Step2:开始安装IDE

1:安装Visual Studio Code

没什么可说的,MS的工具安装几乎都是Next...Finish

2:安装Go API

安装根目录需要注意,这里我的安装根目录是 D:\Go

安装完毕后,创建工作目录,这里我的工作目录创建为:X:\GoPath

这2个目录非常重要,牢记后配置环境变量:

一共3个环境变量,分别为:GOBIN,GOPATH,GOROOT,如上图配置好

PATH变量加入:GOBIN路径:D:\Go\bin

新增的3个环境变量及PATH变量变更完毕后,可以在cmd中执行go env检查:

3:安装Git组件

安装程序如下:

安装完毕之后,需要更新环境变量PATH参数:

4:配置Visual Studio Code

启动VSC,Ctrl+Shift+P打开命令行,执行ext install,然后查找Go,安装Go的开发插件

5:设置工作目录

在VSC里打开设置的Go工作目录,默认如下图(test为自定义模块目录)


Step3:安装各种工具包

1:检查GoPath工作目录下的目录结构:

2:压缩包解压

1)GO Tools工具包解压后放于/src/golang.org/x/tools下

2)GO Tests工具包解压后也放于/src/golang.org/x/tools下

3)GO delve调试工具解压后放于/src/golang.org/derekparker/delve下

4)GO liner包解压后放于/src/golang.org/peterh/liner下

3:手动安装以上工具包

在cmd中执行以下指令,安装各个工具包:

go get github.com/nsf/gocode
go get github.com/rogpeppe/godef
go get github.com/golang/lint/golint
go get github.com/lukehoban/go-find-references
go get github.com/lukehoban/go-outline
go get sourcegraph.com/sqs/goreturns
go get golang.org/x/tools/cmd/gorename
go get github.com/tpng/gopkgs
go get github.com/newhook/go-symbols
go get github.com/peterh/liner
go get github.com/derekparker/delve/cmd/dlv
go get golang.org/x/tools/cmd/guru
go get github.com/cweill/gotests

Step4:建立测试程序

1:建立测试项目

开启visual studio code,在src下建立一个新的模块(文件夹),这里以test为例,建立一个hello.go;

2:写一个测试程序

package main

import "fmt"

func main() {
    fmt.Println("hello test.")
}

编写过程中,正常情况下,代码的只能提示,F12(Ctrl+左键)转向代码定义等功能都能正常工作;

3:测试

在VSC调试窗口,F5开始调试:

可以看到调试功能已经可以实现,快捷键保持与VS一致;

这个步骤会遇到如下问题:

问题原因是调试配置文件launch.json文件中定义的调试目录默认是${workspaceRoot}/src/

因此无法定位需要编译的.go文件。这里将其编译目录定位到需要编译的模块目录即可:

保存退出,即可在调试界面正常调试:


基于Visual Studio Code搭建Golang开发调试环境【非转载】的更多相关文章

  1. Windows下visual studio code搭建golang开发环境

    Windows下visual studio code搭建golang开发环境 序幕 其实环境搭建没什么难的,但是遇到一些问题,主要是有些网站资源访问不了(如:golang.org),导致一些包无法安装 ...

  2. 基于Visual Studio Code搭建Vue开发环境

    安装node.js最新版 这里安装的是8.11.4版   image.png 更新npm至最新版 安装node.js后, npm默认版本为: 6.1.0   image.png 使用npm insta ...

  3. Windows10上基于Visual Studio Code安装Golang开发环境

    GoLang简介 Go编程语言是一个开源项目,它使程序员更具生产力. Go语言具有很强的表达能力,它简洁.清晰而高效.得益于其并发机制,用它编写的程序能够非常有效地利用多核与联网的计算机,其新颖的类型 ...

  4. 使用Visual Studio Code搭建TypeScript开发环境

    使用Visual Studio Code搭建TypeScript开发环境 1.TypeScript是干什么的 ? TypeScript是由微软Anders Hejlsberg(安德斯·海尔斯伯格,也是 ...

  5. Visual Studio Code配置GoLang开发环境

    Visual Studio Code配置GoLang开发环境 在Visual Studio Code配置GoLang开发环境 作者:chszs,未经博主允许不得转载.经许可的转载需注明作者和博客主页: ...

  6. Visual Studio Code 搭建Python开发环境

    1.下载Python https://www.python.org/downloads/windows/ 选择一个版本,目前2.0的源码比较多,我下载的2.7.12 2.配置环境变量 3.Visual ...

  7. Visual Studio Code搭建Python开发环境方法总结

    更新:目前VSCode官方Python插件已经支持代码运行与调试,无需安装Code Runner插件. 1.下载安装Python,地址 https://www.python.org/downloads ...

  8. Visual Studio Code搭建python开发环境

    开发Python的环境有很多,原来已经在vs2013上面搭建好python的开发环境了,但是vs2013每次启动都占太多内存(太强大了吧),这下出了vs code,既轻量又酷炫,正好拿来试一试开发py ...

  9. 使用Visual Studio Code和typescript 开发调试React Native项目

    关于React Native的详细介绍我就不叙述了,他是使用js构建原声app的开发框架.一次变异多平台运行,非常强大.但是个人不喜欢js的过于灵活(弱类型)的语法.强大的强类型语言Typescrip ...

随机推荐

  1. poj1698--最大流(Dinic)

    题目大意: 爱丽丝要拍电影,有n部电影,规定爱丽丝每天只能拍一部电影,每部电影在每个礼拜只有固定的几天可以拍电影,只可以拍前面w个礼拜,并且这部电影要拍d天,问爱丽丝能不能拍完所有的电影. 思路: 建 ...

  2. 子div设置浮动无法把父div撑开。

    <div class="mainBox"> <div class="leftBox"></div> <div clas ...

  3. JVM调优总结

    堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制:系统的可用虚拟内存限制:系统的可用物理内存限制.32位系统下,一般限制在1.5G~2G:64为操作 ...

  4. Drupal 8.2.4安装简体中文步骤

    安装的时候发现很多情况下会出现各种问题,现在写下自己安装成功的步骤: 1.首先官网下载zip安装包drupal-8.2.4.zip 2.下载官方提供的8.2.4简体中文语言包drupal-8.2.4. ...

  5. SAP CRM BOL编程基础,代码+详细注释

    网络上可以找到一些使用BOL查询.维护数据的DEMO,但几乎都是单纯的代码,缺乏说明,难以理解.本文除了代码外,还给出了详细的注释,有助于理解BOL编程中的一些基本概念. 这是一篇翻译的文章,你可能会 ...

  6. GDAL生成Erdas Imagine

    GDAL原生支持超过100种栅格数据类型,涵盖所有主流GIS与RS数据格式,包括•  ArcInfo grids, ArcSDE raster, Imagine, Idrisi, ENVI, GRAS ...

  7. StackOverFlow排错翻译 - Python字符串替换: How do I replace everything between two strings without replacing the strings?

    StackOverFlow排错翻译 - Python字符串替换: How do I replace everything between two strings without replacing t ...

  8. 海康威视,大华,宇视 的视频监控iOS Demo

    原谅我只提供一个链接,我在这里写了两遍,最后加个链接页面卡死了,下面的demo,最好真机调试.(写博客还是在别的地方写复制到这里比较好!) 一个画面可以做,4个,9个,16个画面原理是一样的,集合到自 ...

  9. ASP.NET MVC Routing、Areas、URLs

    webForm页面运行起来url一般是这样的:localhost:****/index.aspx,这个过程就是当你运行页面的时候,vs开发工具自带的微型服务器会打开你存在硬盘上的这个文件然后显示在浏览 ...

  10. Linux Shell脚本逻辑操作符简介

    在写程序时,会用到条件判断,测试条件是否成立.很多时候,判断条件是多个的,这个时候需要用到逻辑操作符.shell脚本中常用的有哪些逻辑操作符呢? 1.逻辑与: -a 格式: conditon1 -a ...