文档章节

Golang + vscode 开发环境配置

秋风醉了
 秋风醉了
发布于 08/21 15:16
字数 985
阅读 129
收藏 1

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", //使用 golint 库来执行 lint操作,你也可以选择使用gometalinter
    "go.lintFlags": [],
    "go.vetFlags": [],
    "go.coverOnSave": false, //在保存代码时执行测试,并显示测试覆盖率
    "go.useCodeSnippetsOnFunctionSuggest": true, //使用代码片段作为提示
    "go.formatTool": "goimports", //使用 goimports 工具进行代码格式化,或者使用 goreturns和gofmt
    "go.formatFlags": [],
    "go.gocodeAutoBuild": true, //代码自动编译构建
    // "go.goroot": "/usr/local/Cellar/go/1.10.3/libexec", //设置 goroot,正常编译 go 代码。
    // "go.gopath": "/Users/junv/gocode:/Users/junv/mygocode", // 设置 gopath,有利于自动导入库
}

 

调试 go 程序

首先下载delve

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

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch",
            "type": "go",
            "request": "launch",
            "mode": "auto",
            "remotePath": "",
            "port": 2345,
            "host": "127.0.0.1",
            "program": "${fileDirname}",
            "env": {
                // "GOROOT": "/usr/local/Cellar/go/1.10.3/libexec",
                // "GOPATH": "/Users/flyme/mygo:/Users/flyme/workspace-go"
            },
            "args": [],
            "showLog": false
        }
    ]
}

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

 

安装 Code Runner

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

 

跳转定义

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

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

© 著作权归作者所有

共有 人打赏支持
秋风醉了
粉丝 236
博文 577
码字总数 418437
作品 0
朝阳
程序员
如何快速正确配置VsCode Golang开发环境

Before Starting 本文分两部分 安装Golang 配置VsCode Golang开发环境 Golang version 1.10.3 Linux/macOS 默认安装路径为 Download & Install 下载对应版本的 Golang 如果是macOS可以运行 ...

SpiffyEight77
08/06
0
0
在Visual Studio Code中配置GO开发环境

一、GO语言安装 详情查看:GO语言下载、安装、配置 二、GoLang插件介绍 对于Visual Studio Code开发工具,有一款优秀的GoLang插件,它的主页为:https://github.com/microsoft/vscode-go 这款...

nothingfinal
04/03
0
0
vscode debug flask

一、前言 之前开发一直用Jetbrains旗下的Pycharm,该系列每个IDE产品都很惊艳。在GoLand还没出来的时候,Pycharm可以轻松集成golang环境进行开发,也可以轻松的集成DataGrip数据库管理工具,...

_青菜_
01/13
0
0
Visual Studio Code 使用babel设置

要使用es6,需要通过babel将es6转成es5的代码,才能在浏览器上运行。为了设置babel,在网上找了很多教程,最后参考了两篇文章,摸索着成功了。 参考这两篇文章: 基于vscode的node的ES2015(...

FeanLau
2017/11/06
0
0
VSCode Golang 环境搭建 (mac os)

安装Golang (略) 安装VS Code (略) 设置环境变量 (source ~/.bash_profile) 4. VSCode 安装扩展(略) 5. 执行如下脚本 (执行脚本前,就确保环境变量生效 source ~/.bash_profile) 6. 打开...

alex-J
2017/10/31
0
0

没有更多内容

加载失败,请刷新页面

加载更多

打开eclipse出现an error has occurred see the log file

解决方法: 1,打开eclipse安装目录下的eclipse.ini文件; 2,打开的文本文件最后添加一行 --add-modules=ALL-SYSTEM 3,保存重新打开Eclipse。...

任梁荣
昨天
4
0
搞定Northwind示例数据库,无论哪个版本的SQLServer都受用

Northwind数据库 从这里可以找到突破口: http://social.msdn.microsoft.com/Forums/zh-CN/Vsexpressvb/thread/8490a1c6-9018-40c9-aafb-df9f79d29cde 下面是MSDN: http://msdn2.microsoft......

QQZZFT
昨天
1
0
mysql主从同步,安装配置操作

准备 两台mysql服务,我这里准备了如下: 主库:192.168.176.128 从库:192.168.176.131 如何在Linux上安装mysql服务,请看https://blog.csdn.net/qq_18860653/article/details/80250499 操作...

小致dad
昨天
4
0
一个手机装天下,走遍中国都不怕!

导读 “1200元(人民币,下同),微信支付,可以,你扫我。”来自西非马里共和国的展商Albert拿着手机,和一位买走他手鼓的中国游客用简单的汉语交流着。 近日,“第十四届中俄蒙经贸洽谈暨商品...

问题终结者
昨天
3
0
Redis的“死键”问题

大规模的数据库存储系统中,数据的生命周期管理是很有必要的;从业务角度发现过期数据,数据归档和数据碎片整理等。以MySQL为例,1个运行很久的TB级MySQL实例中,极有可能数百GB的数据,对业...

IT--小哥
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部