Go语言vscode环境配置

Go语言vscode环境配置

此教程在GO已经安装成功的前提下。

安装vscode扩展

在vscode扩展里面搜索go,然后下载扩展。

image

安装go 插件

  1. $GOPATH目录下创建bin,pkg,src
  2. 切换到$GOPATH/bin目录下,打开终端输入以下命令,不需要翻墙:

    • go get -u -v github.com/josharian/impl
    • go get -u -v github.com/mdempsky/gocode
    • go get -u -v github.com/rogpeppe/godef
    • go get -u -v github.com/golang/lint/golint
    • go get -u -v github.com/lukehoban/go-find-references
    • go get -u -v github.com/lukehoban/go-outline
    • go get -u -v github.com/sqs/goreturns
    • go get -u -v golang.org/x/tools/cmd/gorename
    • go get -u -v github.com/tpng/gopkgs
    • go get -u -v github.com/newhook/go-symbols
    • go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv
    • go get -u -v golang.org/x/tools/cmd/guru

    一共 11 个插件,由于被墙和依赖的缘故,很多插件是没办法正常安装的,但是go官方在github是有镜像仓库的,所以我们可以借助github来安装。

  3. src下创建golang.org/x/两个文件夹,然后切换到此目录下,打开终端输入:

    git clone https://github.com/golang/tools.git

    此时x目录下会出现tools文件夹。

  4. 切换到$GOPATH目录下,打开终端输入以下命令安装,安装那些你上一步没有成功的插件:

    • go install github.com/mdempsky/gocode
    • go install github.com/rogpeppe/godef
    • go install github.com/lukehoban/go-find-references
    • go install github.com/lukehoban/go-outline
    • go install github.com/sqs/goreturns
    • go install golang.org/x/tools/cmd/gorename
    • go install github.com/tpng/gopkgs
    • go install github.com/josharian/impl
    • go install github.com/newhook/go-symbols
    • go install golang.org/x/tools/cmd/guru
      golint比较特殊通过上面的方式还是无法安装,所以我们在x目录下打开终端执行:
      git clone https://github.com/golang/lint.git
      go install golang.org/x/lint/golint

    此时所有插件安装成功。

image

第三方库依赖

  1. 安装net库解决警告,切换到x目录,然后打开终端执行:

     git clone git@github.com:golang/net.git --depth 1

    然后重启vscode即可。

  2. 安装text库解决警告,切换到x目录,然后打开终端执行:

    git clone git@github.com:golang/text.git --depth 1

    然后重启vscode即可

调试配置

  1. 进入调试界面,按F5或者点击调试按钮,进入后添加配置。

    image

  2. 回到hello.go文件,按F5,出现以下界面代表成功:

    image

备注:go的调试器是dlv

用户设置

如果设置了系统级别的$GOPATH可以在用户设置里面覆盖。

"go.lintTool": "golint",
"go.formatTool": "goreturns",
"go.useCodeSnippetsOnFunctionSuggestWithoutType": true,

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/536072.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Angular实现悬浮球组件

Angular实现悬浮球组件 在手机 App 上,我们经常会看到悬浮球的东东,用着可能很舒服,但是 web 网页上却很少见,今天我们就通过 Angular 来实现,当然使用其他框架也是可以的。 功能要求: 支持设置直径支持点击触发信号支持设置鼠标按压时间实现的过程中省略的部分天填坑过…

Docker+Nginx部署Angular国际化i18n

Docker+Nginx部署Angular国际化i18n 在Angular项目中添加default.conf文件 default.conf 为了支持局域网,增加一个域名,即本地的局域网ip地址。 server {listen 80;server_name localhost;server_name 192.168.2.172;location / {root /usr/share/nginx/html;lo…

消息队列-Message Queue

消息队列-Message Queue 目前随着互联网的普及以及上网用户的增多,拥有一套 安全、稳定、低耦合、高性能的内部通信工具尤为重要。 什么是消息队列? 消息队列(英语:Message queue)是一种进程间通信或同一进程的不同线…

Angular 第一章 开始

第一章 开始 用 JavaScript 开发应用程序是一个很大的挑战。由于它的延展性和缺少类型检查,在 JavaScript 中构建一个适当大小的应用程序是很困难的。除此之外,我们对所有类型的处理都使用JavaScript,例如用户界面(UI),操作、客户端-服务器交互和业务处理/验证。因此,我们…

Typescript实现单例之父类调用子类

Typescript实现单例之父类调用子类 设计要求 在程序中,需要一个对象可以全局使用,并且只有一个实例Breakpoint 类是一个可以被继承的类,然后子类必须实现 updateView函数updateView 这个函数可以被自动调用,当窗口发生变化的时候构思 UML 图 Layout 是一个单例类,也就是全局只…

Angular性能优化之脏检测

Angular性能优化之脏检测 当我们在使用 Angular 框架搭建项目时,随着组件越来越多,页面也来越复杂,性能会越来越低,主要表现在 CPU 使用率 很高。所以我们要对项目做一定的优化。 Angular脏检查(Change Detection)机制 Angular 的脏检测主要是指 zone.js,这是一个开源的…

第一章、第一节 Angular基础

第一章、第一节 Angular基础 让我们先来看看Angular是如何实现组件模式的。 组件模式 Angular 应用程序使用组件模式。你可能听说过这个模式,它不仅用于软件开发,还用于制造、建筑和其他领域。简单地说,它涉及到将更小的、离散的构建块组合…

Angular Chart.js第三方库ng-chartjs基础使用

Angular Chart.js第三方库ng-chartjs基础使用 项目github地址 这个项目支持基本的Chart.js图表,并且支持内联插件和全局插件的使用。 Demo地址 支持图表类型 linebarradarpiepolarArea安装 npm install ng-chartjs --save npm install chart.js --save导入 正常导入模块i…

linux一键安装node+npm

分享一个linux下一键安装nodenpm脚本。 使用方式为: ./install-node.sh,然后输入版本号,node.js版本查询 切记不需要加 sudo 执行!!! 默认安装10.15.0。 #! /bin/bash############################################################ # …

Angular Material 阴影使用

Angular Material 阴影使用 依托于 Angular Material 库,可以直接使用通用的符合 Material Design 风格的阴影。 使用 使用方式有两种: 外联样式设定,即在css或scss中设定通过class名称设定,即 元素的class名称方式一:外联样式使用 在scss或css文件中导入@import ~@ang…

typescript或javascript深拷贝Object json

typescript或javascript深拷贝Object json Object的json对象很多时候我们需要深拷贝,我写了两个工具函数,供大家参考。 deepCopyObject 深拷贝一个Object对象,返回深复制的对象。 /** * method 深复制一个json对象 * param source 需要深复制的对象 * return 返…

linux安装zsh终端

linux安装zsh终端 ZSH 已经被收录到了 Ubuntu 18.04 LTS 的官方软件包存储库中了 sudo apt install zshZSH Shell 安装好之后,可以使用如下命令查看其版本: zsh --version取代bash,设为默认shell sudo usermod -s /bin/zsh username也可以…

HTML meta使用

HTML meta使用 meta标签是什么? meta标签是HTML语言head区的一个辅助性标签。 meta标签是干什么用的? meta标签用来描述一个HTML网页文档的属性,例如作者、日期和时间、网页描述、关键词、页面刷新等。它提供的信息虽然用户不可见&#x…

共享图片方案

共享图片方案 安装chrome插件 极简图床安装,链接地址 插件使用 使用阿里云 OSS 存储图片 阿里云 OSS 提供了安全、低成本、高可靠的云存储服务,极简图床针对阿里云 OSS 做了整合,通过简单的设置,即可方便地将图片上传到阿里…

javascript复制到黏贴板之完美兼容

javascript复制到黏贴板之完美兼容 很多时候我们需要给用户方便,提供一键复制的功能,但是在实现的过程中遇到各式各样的坑。 原生解决方案 document.execCommand()方法 MDN上的定义: which allows one to run commands to manipulate the contents of the edita…

制作windows启动盘-大于4GB镜像

制作windows启动盘-大于4GB镜像 制作一个 Windows 安装 U 盘是很容易的,使用 UltraISO 这样的刻录工具量产一个 iso 镜像文件到 U 盘即可。然而随着 Windows 10 版本号的提升,镜像变得越来越大,终于 FAT32 文件系统不再能够容纳得下安装镜像…

DIY 主机 所有AMD IntelCPU及主板

DIY 主机 所有AMD IntelCPU及主板 查看intel的cpu及amd的cpu或者对应的主板可以查看这个项目。diy-pc

PC介绍之电脑组成

电脑组成 CPU cpu就是中央处理器,英文为central processing unit。 CPU一般我们需要知道以下几点即可: 主频 CPU的主频,即CPU内核工作的时钟频率(CPU Clock Speed),通常所说的某某CPU是多少兆赫的&#xff…

PC介绍之PCIE、总线、内存、电源

PC介绍之PCIE、总线、内存、电源 PCIE降速 PCI-E的总线性能 目前我们所使用的显卡是x16 走 PCIE 3.0,有些显卡虽然插在x16的插槽上,但是速度只有x8的速度,总的来说好的显卡目前都是x16。 主板一般会提供一条x16,x8, x1三个插槽&#xff0c…

PC介绍之显卡

PC介绍之显卡 一、什么是显卡? 显示接口卡(Video card,Graphics card)、显示器配置卡简称为显卡,是个人电脑基本组成部分之一。 用途是将计算机系统所需要的显示信息进行转换驱动,并向显示器提供信号&…