【golang学习之旅】使用VScode安装配置Go开发环境

  • 1. 下载并安装Go
    • 1.1 下载地址
    • 1.2 选择版本并下载
    • 1.3 安装目录
    • 1.4 验证是否安装成功
  • 2. 配置环境变量
    • 2.1 配置步骤
    • 2.2 GO部分环境变量说明
  • 3. 下载或更新 Vscode
    • 3.1 下载地址
    • 3.2 安装步骤
  • 4. 为Go开发配置VScode

1. 下载并安装Go

1.1 下载地址

https://studygolang.com/dl

1.2 选择版本并下载

我选择了较新的稳定版本 go1.21.11。并且根据自己的系统选择安装包,我是Windows所以选择下面的安装包进行下载:
在这里插入图片描述

路径选择可以自定义:

在这里插入图片描述

1.3 安装目录

安装好之后安装目录中有如下文件:

在这里插入图片描述

目录介绍
apigo1.1.txt,go.1.2.txt…go1.12.txt存放go的所有版本(go1.1到go.1.21)的api信息
doc存放Go语言几乎全部的HTML格式的官方文档和说明,方便开发者在离线时查看
bin存放go的可执行文件。包括gofmt.exe ,go官方的代码格式化工具,用来统一代码风格;godoc.exe 在不联网的情况下在本地访问go的api;go.exe 编译构建整个go项目,贯穿go项目的声明周期,go env; go build; go mod; go install;等等
lib一些公共的库。存放各类编辑器或IDE(集成开发环境)软件的插件,辅助它们查看和编写Go代码
pkg在go install 完成后,用于保存go语言标准库的所有归档文件(比如fmt包被构建安装后,将生成一个fmt.a归档文件),同时也包含了和平台(windows,linux,mac)项目的一些目录,不同的操作系统看到不一样
src存放go所有标准库,go语言工具,以及涉及到的底层库(C语言)实现的代码
test存放测试go语言的代码文件

1.4 验证是否安装成功

安装完成后,Win + R 打开输入 cmd 打开命令行窗口,然后输入 go version 可以查看 Go 的版本:

在这里插入图片描述


2. 配置环境变量

2.1 配置步骤

右键此电脑 → 属性 → 高级系统设置 → 环境变量

在这里插入图片描述

新建系统变量

在这里插入图片描述

新建GOROOT变量

在这里插入图片描述

新建GOPATH变量。GOPATH的目录位置可以自己选择

先自己选择一个目录作为GOPATH,然后在目录中创建以下三个目录:

在这里插入图片描述

然后添加GOPATH系统变量

在这里插入图片描述

把用户变量里的 GOPATH 也换成自定义的目录

在这里插入图片描述

然后编辑用户变量里的 Path

在这里插入图片描述

最后可以去看一下系统变量里的 Path(点击 Path然后编辑),一般可以看到 Go 的路径已经配置好了,我们不需要动,这是 Go 在安装时自动配置的。之前用 go version 查看版本号也是因为这里的环境变量,如果以后出现命令未找到等问题,可以回到这里检查。

在这里插入图片描述

在这里插入图片描述

配置环境完变量后,记得点击「确定」再退出。

最后,Win + R,输入 cmd 打开命令行,输入 go env 可以检查一下,主要是看一下GOROOT和GOPATH这两个变量,应该是和我们前面设置的一致:

在这里插入图片描述

2.2 GO部分环境变量说明

go env //打印Go所有默认环境变量
  • GOROOT

    环境变量GOROOT表示Go语言的安装目录

    Windows中,GOROOT的默认值是C:/go,而在Mac OSLinuxGOROOT的默认值是usr/local/go,如果将Go安装在其他目录中,而需要将GOROOT的值修改为对应的目录。一般我们安装好之后Go会自动配置该变量

  • GOPATH

    环境变量GOPATH是Go项目的工作目录,按照Go开发规范,GOPATH目录下的每个工作一般分为三个子目录:src,pkg,bin

    • src目录放的是我们开发的源代码文件,其下面对应的目录称为包
    • pkg存放编译后的包文件
    • bin存放项目源文件
  • GOBIN

    GOBIN用来存放我们的项目代码编译后生成的二进制文件 (可执行文件) 。当我们使用go install命令编译打包我们的项目代码时,它会将编译后生成的二进制文件放入到GOBIN指定的目录下。如果没有指定GOBIN目录,默认是GOPATH/bin

  • GOPROXY

    GOPROXY设置的是,go get 下载依赖时使用的代理地址列表。该环境变量也可以设置多个值,多个值之间使用逗号 或竖杠分隔。当用 go 命令查找依赖模块时,它会按顺序访问 GOPROXY 列表中的每个代理,直到收到成功的响应或出现终端错误

  • GOOS

    GOOS的值是为其编译代码的操作系统。例如:linux、darwin、windows、netbsd、freebsd、openbsd、solaris

  • GOARCH

    GOARCH的值是为其编译代码的CPU架构或处理器。比如amd64、386、arm等

    GOARCH和GOOS是成对出现的,比如,如果是macOS系统,那么它们就有以下几种组合形式:

    在这里插入图片描述

    GOOS和GOARCH这两个环境变量用于交叉编译,也就是在一个平台上可以生成在另一个平台上运行的程序,比如在32位的windows操作系统环境中,生成可以在64位Linux操作系统上运行的二进制程序,通常需要借助第三方的工具才能够实现。但是在GO语言中,只需要设置GOOS和GOARCH这两个环境变量就可以实现


3. 下载或更新 Vscode

3.1 下载地址

https://code.visualstudio.com/Download

3.2 安装步骤

下载 Vscode 安装文件

在这里插入图片描述

下载完成单击安装文件开始进行安装

在这里插入图片描述

自定义安装目录

选择附加任务

在这里插入图片描述

准备安装

在这里插入图片描述

正在安装(几秒钟就安装成功了)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


4. 为Go开发配置VScode

打开终端并执行:

在这里插入图片描述

在vscode界面按键盘ctrl+shift+p,输入Go: install/update tools,回车如下图,选择要安装的依赖(这里全选),等待安装完成

在这里插入图片描述

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【单片机】三极管的电路符号及图片识别

一:三极管的电路符号 二:三极管的分类 a;按频率分:高频管和低频管 b;按功率分:小功率管,中功率管和的功率管 c;按机构分:PNP管和NPN管 d;按材质分:硅管和锗管 e;按功能分:开关管和放…

硬盘分区无法访问:深度解析与解决之道

一、硬盘分区无法访问的现象描述 在日常使用电脑的过程中,有时会遇到硬盘分区无法访问的情况。这通常表现为双击分区时系统提示“无法访问”、“磁盘未格式化”或“需要格式化”等错误消息,导致分区内的文件无法读取或操作。这种情况可能会给用户带来极…

构建高效、便捷的家校沟通桥梁

在现代教育中,家校之间的有效沟通和协作是确保学生全面发展的关键。搭贝家校管理应用通过一系列强大而便捷的功能,帮助学校和家长实现无缝对接,提供全面的管理和服务。以下是搭贝家校管理应用的主要功能和优势。 🏫 主要功能模…

发布自己的c#包到nuget

1)创建自己的nuget账号 NuGet Gallery | Home 2)在Rider中-->项目文件夹右键-->properties 注意:必须勾选生成nuget包 3)编译后,将生成一个包 4)点击上传包 5)将之前的nuget包拖拽过来,点击上传即可,如果有不对的比如&a…

STM32开发环境搭建

新建工程 1.双击桌面的快捷方式打开STM32CubeIDE,需要选择一下工作空间,保存路径可以根据实际选择其他路径(不要带中文)。 点击File->New->STM32 Project. 搜索并选择芯片,我这里以STM32F103RCT6为例&#xff0…

python学习笔记-08

面向对象基础(OOP)-上 1. 面向对象概述 面向过程:根据业务逻辑从上到下写代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象(object oriented programming):将数据与函数绑定到一起…

防爆气象站:化工厂区气象环境监测的最佳选择

在化工厂区,气象环境监测至关重要,它直接关系到生产安全、环境保护以及员工健康。防爆气象站作为专业的监测设备,凭借其独特的防爆性能和精准的数据监测能力,成为化工厂区气象环境监测的最佳选择。 防爆气象站采用先进的防爆技术…

java 线程之间通信-volatile 和 synchronized

你好,我是 shengjk1,多年大厂经验,努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注!你会有如下收益: 了解大厂经验拥有和大厂相匹配的技术等 希望看什么,评论或者私信告诉我! 文章目录 一…

Studying-代码随想录训练营day14| 226.翻转二叉树、101.对称二叉树、104.二叉树的最大深度、111.二叉树的最小深度

第十四天,(ง •_•)ง💪💪,编程语言:C 目录 226.翻转二叉树 101.对称二叉树 100.相同的树 572.另一个树的子树 104.二叉树的最大深度 559.n叉树的最大深度 111.二叉树的最小深度 总结 226.翻转二叉树 文档讲…

linux 查找和搜索命令

查找传入条件 a:在哪些目录查找 b:查找的内容 find命令: find 目录名 选项 查找条件 find /home/Camera/ -name “*.txt” 解释: /home/Camera/ 指明了查找的路径 -name 表明以名字来查找文件 *.txt 查找名为.txt的文件 grep命令: 在当前目录下查找: grep -n "sample_s…

AI辅助工具革新金融交易编程,引领行业新风尚

今天有伙伴问了我金融方面AI的问题,我来写一下吧 随着人工智能技术的飞速发展,金融交易领域也迎来了新的变革。传统的金融交易编程往往依赖于交易员的专业知识和编程技能,但在人工智能的助力下,自动写代码的AI辅助工具正逐渐崭露…

访问网络 测试没有问题,正式有问题

ping -c 5 -i 1 www.baidu.com 首先检查一下网络,在正式服务器ping 一下要访问的地址。 如果不行,联系网络管理员开通。 笔者因为这个问题浪费了半天时间,一开始都以为是代码问题 以后大家看到这个异常,解决如下: …

对角线法则的由来

目录 一、前言 二、对角线法则 三、行列式的定义 1. 行列式的定义 2. (全)排列 3. 逆序数 四、由全排列逆序数 到 对角线法则规律 ​编辑 五、参考书目 一、前言 仅限于个人理解,对错没有查证。 二、对角线法则 提起对角线法则,我们更倾向于他是…

企业如何选择合适的CRM工具?除Salesforce之外的10大主流选择

对比salesforce,其他10款优秀CRM:纷享销客CRM、Zoho CRM、腾讯企点、销售易、企业微信 (WeCom)、Odoo CR、OroCRM、金蝶、用友CRM、EspoCRM 虽然Salesforce以其全面的功能和强大的市场占有率在海外收获了许多客户,但Salesforce在国内市场的接…

Microsoft AI Day:支持开放合作,普及技术应用,推进行业企业智慧化创新

微软在北京举办以“共创AI创新,智启无限可能”为主题的Microsoft AI Day活动,集中展示了在生成式智能技术加速发展普及的过程中,微软取得的最新技术突破与进展,并同步更新了在Microsoft Build 2024全球开发者大会上发布的一系列Az…

springboot中,将某个函数的日志单独输出的方法

这里写自定义目录标题 背景解决方案解决过程原理 背景 项目中有个节点健康检查扫描功能,每10秒扫描一次节点。 如果节点挂掉,会输出健康检查失败的日志。 测试环境,虽然配置了多个节点,但并没有都启动,所以在扫描的时…

油猴hook+内存爆破

hook方式 说明:来回翻页发现只有请求体的token需要逆向,而这个请求体是在params里,拼接到url里,可以直接用油猴hook url里的关键字token。 正常步骤 hook代码 // UserScript // name hookparams // namespace htt…

前端易遭受的六大安全威胁,以及对应解决策略。

前端遭受安全威胁可能会导致用户隐私泄露、账户被盗用、系统遭受攻击、用户体验受损等严重后果,所有安全防御也成了前端开发者的必须课之一,贝格前端工场带领大家了解下常见的安全威胁。 一、前端开发面临的安全风险 1. 跨站脚本攻击(XSS&a…

项目实施经理岗位的工作内容(合集)

项目实施经理岗位的工作内容1 职责: (1)负责协调软件团队对软件产品的研发工作(包括代码开发,测试,部署实施等); (2)引导和解析客户需求,根据产品特点及用户个性化需求制定解决方案,完成客户宣讲等售前技术支持工作; (…

【CT】LeetCode手撕—141. 环形链表

目录 题目1- 思路2- 实现⭐141. 环形链表——题解思路 3- ACM实现 题目 原题连接:141. 环形链表 1- 思路 模式识别 模式1:判断链表的环 ——> 快慢指针 思路 快指针 ——> 走两步慢指针 ——> 走一步判断环:若快慢相遇则有环&a…