2019独角兽企业重金招聘Python工程师标准>>>

GOPATH 环境变量的配置 https://my.oschina.net/xinxingegeya/blog/718305

安装vscode go 扩展

下载vscode ,安装go的扩展https://github.com/Microsoft/vscode-go

该扩展对 Golang 支持非常丰富的功能:

  • 代码格式化
  • 保存时代码自动格式化
  • 自动添加 Imports
  • 代码错误提示
  • 引用查询与跳转到定义位置
  • Go 代码元素搜索
  • 文档查看
  • 支持代码调试等等功能。

安装完vscode,打开.go文件时,vscode会推荐安装go的包,但是vscode中有些go的包总是提示安装fail。这是因为go get 访问的一些包被墙了,虽然开了shadowsocks,但是shadowsocks是基于socks5协议的,go get则是使用http协议进行网络访问,因此开了shadowsocks, go get 依旧不通。同时 go get命令是在命令行里执行的,要给命令行设置代理。

方法1:

在终端中直接运行命令

export http_proxy=http://proxyAddress:port

这个办法的好处是简单直接,并且影响面很小(只对当前终端有效,退出就不行了)。

如果你用的是ss代理,在当前终端运行以下命令,那么wget curl 这类网络命令都会经过ss代理

export ALL_PROXY=socks5://127.0.0.1:1080

方法2:

把代理服务器地址写入shell配置文件.bashrc或者.zshrc

直接在.bashrc或者.zshrc添加下面内容

export http_proxy="http://localhost:port"
export https_proxy="http://localhost:port"

以使用shadowsocks代理为例,ss的代理端口为1080,那么应该设置为

export http_proxy="socks5://127.0.0.1:1080"
export https_proxy="socks5://127.0.0.1:1080"

或者直接设置ALL_PROXY

export ALL_PROXY=socks5://127.0.0.1:1080

localhost就是一个域名,域名默认指向 127.0.0.1,两者是一样的。

然后ESC:wq保存文件,接着在终端中执行source ~/.bashrc

这个办法的好处是把代理服务器永久保存了,下次就可以直接用了。

或者通过设置alias简写来简化操作,每次要用的时候输入setproxy,不用了就unsetproxy

alias setproxy="export http_proxy=http://127.0.0.1:1087;export https_proxy=http://127.0.0.1:1087;"
alias unsetproxy="unset http_proxy;unset https_proxy;"

采用方法二,对所有终端执行的go get命令有效。

基本都安装成功了。

配置用户设置 settings.json

{"debug.node.autoAttach": "on","go.vetOnSave": "package","editor.formatOnSave": true,"go.buildOnSave": "package","go.lintOnSave": "package","go.buildTags": "","go.buildFlags": [],"go.lintTool": "golint","go.lintFlags": [],"go.vetFlags": [],"go.coverOnSave": false,"go.useCodeSnippetsOnFunctionSuggest": true,"go.formatTool": "goimports","go.formatFlags": [],"go.gocodeAutoBuild": true
}

调试 go 程序

首先下载delve

当你第一次进行调试时,vscode 则要求你添加调试程序的相关配置。如下 launch.json,

{"version": "0.2.0","configurations": [{"name": "Launch","type": "go","request": "launch","mode": "debug","remotePath": "","port": 2345,"host": "127.0.0.1","program": "${fileDirname}","env": {"GOPATH": "/Users/flyme/mygo"},"args": [],"showLog": true},{"name": "Test","type": "go","request": "launch","mode": "test","remotePath": "","port": 2345,"host": "127.0.0.1","program": "${fileDirname}","env": {"GOPATH": "/Users/flyme/mygo"},"args": [],"showLog": true}]
}

打上断点,点击箭头就可以调试代码了。

安装 Code Runner

搜索扩展Code Runner,点击安装,就可以直接通过按钮来运行代码了

跳转定义

跳转到函数定义只需要 ⌘+鼠标左键,或者直接按下F12即可。
返回到之前的按键是ctrl+-ctrl+shift+-,这样就能快速导航了。

============END============

转载于:https://my.oschina.net/xinxingegeya/blog/1931460

Golang + vscode 开发环境配置相关推荐

  1. 第一讲:ESP32-IDF+VSCode开发环境配置

    第一讲:ESP32-IDF+VSCode开发环境配置 文章目录 第一讲:ESP32-IDF+VSCode开发环境配置 1.1写进ESP32芯片的二进制程序的生成方式 1.2ESP32-IDF+VSCo ...

  2. 搭建golang+vscode开发环境

    顺序:安装Git >> 安装Go >> 安装vscode >> 安装go插件 >> 安装第三方依赖包 一.准备工具 git安装包.go安装包.vscod ...

  3. erpnext v13 安装部署 + VSCode本地开发环境配置

    ERPNext Version-13 安装生产环境 参考链接 https://discuss.erpnext.com/t/install-frappe-erpnext-v13-beta-from-sc ...

  4. golang开发环境配置以及简单使用

    golang开发环境配置以及简单使用 编译golang程序 go build命令的使用 http://c.biancheng.net/view/120.html 使用go build, 将main.g ...

  5. RP2040配置VSCODE开发环境——一劳永逸版

    前言 前面的环境搭建基本上介绍了所有的开发环境配置,也对比了各个环境的优劣.个人认为,非商业开发的话,可能Segger Embedded Studio是最好的,但是我不太习惯他的使用方式.这个会另外开 ...

  6. 51单片机开发环境配置(使用VScode开发)

    前言 工欲善其事,必先利其器,作为一个个单片机爱好者,相信大家入门的时候都是用的keil来开发,这个当然也可以,但是用的时间长了就发现这个开发效率真是慢呀.于是我就想能不能在vscode上开发单片机, ...

  7. Mac VScode C++开发环境配置

    Mac VScode C++开发环境配置 一 需要安装的模块 C/C++C/C++ Clang Command AdapterCode RunnerCodeLLDB 二 配置文件 c_cpp_prop ...

  8. vscode+qt开发环境配置

    vscode+qt开发环境配置 vscode + qt 实现代码提示 i3两外两个桌面 打开qt的 ui设计 designer 和文档 assiant 实现高效率开发 这个方法首先需要用qtcreat ...

  9. Java开发环境配置/Vscode搭建

    文章目录 JDK简介 Java开发环境配置 Vscode中配置Java开发环境 JDK简介 JDK,全称 Java Development Kit,是整个 Java 的核心,包含 Java 运行环境. ...

最新文章

  1. Mongo、Redis、Memcached对比及知识总结
  2. JAVA实现查看详情功能_【JavaWeb】111:详情页面的实现
  3. JavaFX学习之道:JavaFX之TableView
  4. Java高级篇——深入浅出Java类加载机制
  5. IBM量子计算新突破:成功构建50个量子比特原型机
  6. mac linux win三系统安装教程,【教程】macbook pro上安装三系统详解教程(mac os x+windows+linux ubuntu)...
  7. python之类介绍
  8. [转]用python来开发webgame服务端(5)
  9. java中括号的匹配_java括号匹配算法
  10. python数据类型包括实数_01~Python数据类型
  11. 每日一题冲刺大厂第十五天 终于结束的起点
  12. 欧盟授权代表EU Representative是什么?
  13. [机缘参悟-72]:深度思考-人生自省的四重境界:不觉、自觉、觉他、圆满
  14. 做自媒体1年投资4百W亏损370W,自媒体的水太深
  15. 图像处理之K-Means算法演示
  16. OCR图文识别软件是怎么从文档里复制内容的
  17. 读写锁ReentrantReadWriteLock源码分析
  18. 遥感ENVI5.1辐射定标以及大气矫正
  19. html车票查询表单,火车票订单查询系统
  20. 文件打开方式关联错误解决方法

热门文章

  1. code blocks 快捷键
  2. 什么是滚动灯箱的全数字滚动系统?
  3. 手把手教你写ORM(三)
  4. SpringBoot 2.0 系列001 -- 入门介绍以及相关概念
  5. 转载:oracle RAC集群启动和关闭
  6. CXF框架实现webservice实例
  7. Spark入门实战系列--6.SparkSQL(中)--深入了解SparkSQL运行计划及调优
  8. 深入C#学习系列一:序列化(Serialize)、反序列化(Deserialize)
  9. ListView和GridView的一些杂七八杂的内容
  10. PLSQL_性能优化系列04_Oracle Optimizer优化器