Windows设备go环境安装配置

一、下载go安装包

官网链接:All releases - The Go Programming Language (google.cn)

安装过程比较简单,这里不再赘述,可参考这位博主的文章。本文重点在环境配置。golang环境详细安装、配置_golang安装-CSDN博客

二、环境变量配置

1.添加GOROOT环境变量

此处已win11为例,环境变量位置:设置–>系统–>环境变量

这里环境变量有两种,一种是用户环境变量,一种是系统环境,两者的区别是:

用户环境变量:局部生效,只对当前用户生效。

系统环境变量:全局生效,对所有用户都生效。

用户变量和系统变量冲突时,以用户变量为主。

总结:一般用户个人电脑只有自己使用的情况下,建议直接把go相关的环境变量直接配置到系统变量中。

找到上述环境变量配置位置后,我们开始进行相关配置。

首先添加GOROOT变量,变量值为第一步go源码的下载安装路径,用户可自定义路径

2.添加GOPATH环境变量

在添加GOPATH环境变量之前,我们需要先新建一个工作区文件夹,这里笔者以goproject命名。然后在该文件夹下分别创建src, pkg, bin三个文件夹,这三个文件夹作用如下:

src: 存放源代码(go项目存放的位置)

b****in: 存放编译后的二进制文件 (在项目中用到的如swag.exe等exe文件就会在这里)

pkg:存放编译后的包文件

然后我们需要添加GOPATH环境变量,即我们所创建的项目工作区文件所在位置

3.Path环境变量添加

这里注意go源码文件下的bin路径和我们工作区文件下创建的bin两个路径都要添加。

(笔者之前踩过的坑,忘记添加工作区文件下的bin路径导致在项目中控制台窗口无法使用swag命令)

以上环境变量全部添加完成后,记得确认保存!!!

三、测试配置是否成功

1.win+R输入cmd打开命令提示窗口,输入下面指令查看go版本

go version

2.查看go环境

go env

以上即为环境配置成功。但是,我们还需要对一些环境配置进行相应修改

Go默认的GOPROXY的值是:GOPROXY=https://proxy.golang.org,direct。这个goproxy在使用go get安装第三方库的时候会报错,导致无法下载成功,所以必须要修改一下。

比如改为:https://goproxy.io,direct (七牛镜像)或 https://mirrors.aliyun.com/goproxy(阿里云镜像)

Go 在后续拉取模块版本时默认从https://proxy.golang.org拉取,但 proxy.golang.org 在中国无法访问,所以我们需要配置 goproxy.cn 代理,来解决包的下载,同样配置了代理,也可以提升下载速度。

Go.mod概述:是Golang1.11版本新引入的官方包管理工具,用于解决之前没有地方记录依赖包具体版本的问题,方便依赖包的管理。

如何使用go.mod首先将go的版本升级为1.11以上,我们不用升级,go1.17默认支持了,只需要把GO111MODULE配置为on就可以了。

GO111MODULE中的111,代指1.11版本。(为了纪念第一个版本)

所以我们需要输入命令进行如下修改:

#开启mod模式(项目管理需要用到)
go env -w GO111MODULE=on
#重新设置成七牛镜像源(推荐)或阿里镜像源(用原有的会比较慢)
go env -w GOPROXY=https://goproxy.cn,direct
go env -w GOPROXY=https://mirrors.aliyun.com/goproxy

镜像源任选一个即可。

修改完成后,再次查看go 环境,可以发现已经更新。至此go环境配置全部结束。

参考文章:

golang环境详细安装、配置_golang安装-CSDN博客

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

vulnhub靶场【hacksudo】之aliens

前言 靶机:hacksudo-aliens 攻击:kali 都是采用虚拟机的形式,网卡桥接模式 主机发现 使用arp-scan -l或者netdiscover -r 192.168.1.1/24进行探索 信息收集 使用nmap扫描 两个http服务,一个ssh服务 网站信息 访问查看 访…

(数据结构与算法)递归 递归是什么 递归的案例和场景 递归进阶

递归的定义和应用条件 递归就是程序调用自身的编程技巧; 把大型复杂的问题转化为一个与原问题相似规模较小的问题来进行求解; 递归每次调用传入的是不同的变量 递归不是算法,是调用自己的过程 调用的那个是一个小问题,自己是一个…

鼠标右键单击Git Bash here不可用

最近在学习git时突然发现右键的git bash没反应,但是去点击应用图标就能正常运行,通常是因为你在安装git之后改变了它的目录名称或者位置,我就是因为安装后改变了一个文件夹的文件名导致不可用 在安装git时系统会默认给鼠标右键选项的git Bas…

【0x0002】HCI_Inquiry_Cancel命令详解

目录 一、命令概述 二、命令格式及参数说明 三、返回事件及参数说明 3.1. HCI_Command_Complete事件 3.2. Status 3.3. 示例 四、命令执行过程 4.1. 前提条件检查 4.2. 命令构建与发送 4.3. 控制器处理 4.4. 返回状态参数 4.5. 主机接收反馈与处理 4.6. 执行流程结…

OpenAI 12Days 第二天 强化微调(RFT):推动语言模型在科学研究中的应用

OpenAI 12Days 第二天 强化微调(RFT):推动语言模型在科学研究中的应用 文章目录 OpenAI 12Days 第二天 强化微调(RFT):推动语言模型在科学研究中的应用RFT的工作原理与应用领域案例研究:基因突变…

公共云提供商正在错失人工智能机遇

他们目前的成功和增长得益于人工智能的应用,但从长远来看,不可持续的成本和可行的替代方案可能会让企业望而却步。 生成式人工智能正在蓬勃发展,并且将继续蓬勃发展。因此,本地和公共云提供商都看到了对其人工智能产品的需求激增…

【Linux系列】AWK 使用指南

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

什么是 k8s CNI ?

1、什么是 CNI ? CNI 是容器网络接口 (Container Network Interface)的缩写。定义了容器运行时如何与网络插件进行交互,从而管理容器网络。只要开发者遵循 CNI 定义的规范就可以接入 kubernetes ,为 Pod 创建虚拟网卡…

深入理解进程的退出、等待与替换(Linux系统)

个人主页:敲上瘾-CSDN博客 个人专栏:Linux学习、游戏、数据结构、c语言基础、c学习、算法 目录 一、进程退出 1.退出场景 2.常见退出方法 3.退出码与退出信号 4._exit函数与exit函数 二、进程等待 1.什么是进程等待(是什么?…

【初阶数据结构与算法】二叉树链式结构刷题训练(Leetcode二叉树遍历、单值二叉树、相同的树、另一棵树的子树、对称二叉树)

文章目录 一、二叉树的遍历二、单值二叉树三、相同的树四、另一颗树的子树五、对称二叉树 一、二叉树的遍历 在链式二叉树的定义与实现中我们已经详细讲解了二叉树常见的三种遍历方式,以及层序遍历,这里给出链接:【初阶数据结构与算法】二叉树…

深入浅出 Go 语言 sync包中的互斥锁、条件变量

深入浅出 Go 语言 sync包中的互斥锁、条件变量 引言 在并发编程中,多个 Goroutine 同时访问共享资源可能会导致数据竞争(Race Condition),进而引发程序的不一致性或崩溃。为了确保并发程序的正确性和稳定性,Go 语言提…

制造业数据集成案例分享:3小时内实现MySQL到MySQL数据对接

ZZ刷新生产用料清单四化库存-制造一处-3小时:MySQL到MySQL数据集成案例分享 在现代制造业中,实时、准确的数据流动是确保生产效率和资源优化的关键。本文将分享一个实际运行的系统对接集成案例——“ZZ刷新生产用料清单四化库存-制造一处-3小时”&#…

OpenCV 图像基本操作

OpenCV快速通关 第一章:OpenCV 图像基本操作 第二章:OpenCV 图像基本操作 OpenCV 图像基本操作 OpenCV快速通关第二章:OpenCV 图像基本操作一、相关结构体与函数介绍(一)cv::Mat 结构体(二)cv:…

雨晨 2610(2)0.2510 Windows 11 24H2 Iot 企业版 LTSC 2024 极简 2in1

文件: 雨晨 2610(2)0.2510 Windows 11 24H2 Iot 企业版 LTSC 2024 极简 2in1 install.esd 索引: 1 名称: Windows 11 IoT 企业版 LTSC 极简 26100.2510 描述: Windows 11 IoT 企业版 LTSC 极简 26100.2510 By YCDISM RTM 2025 24-12-07 大小: 8,176,452,990 个字节 索引: 2 …

PHP保存base64编码图片,图片有一部分是灰色块儿,原因和解决办法

文章目录 场景原因解决方案完整的代码前端代码php代码 场景 我有个需求,移动端h5上传多张的图片。用input file可以上传多张,但是现在照片体积越来越大,同时上传多张会因为体积过大,导致上传失败。如果是小程序会好很多&#xff…

【CSP CCF记录】202212-2第28次认证 训练计划

题目 样例1输入 10 5 0 0 0 0 0 1 2 3 2 10 样例1输出 1 1 1 1 1 10 9 8 9 1 样例1解释 五项科目间没有依赖关系,都可以从第 1 天就开始训练。 10天时间恰好可以完成所有科目的训练。其中科目 1 耗时仅 1天,所以最晚可以拖延到第 10 天再开始训练&…

gitee

Git 是一个开源的 [ 分布式 ][ 版本控制系统 ] ,用于敏捷高效地 处理任何或小或大的项目 Git 非常容易学习,低植入,高性能。因为拥有轻量的本地分支,易用的暂存区,和多工作流的特点,它超越了类似Subversio…

Spring——SpringBean初始接口

摘要 本文详细介绍了Spring框架中SpringBean的初始化接口和注解,包括BeanPostProcessor接口、InitializingBean接口和PostConstruct注解。文章解释了这些接口和注解的原理、作用、适用场景,并提供了示例代码。最后,对比了不同SpringBean初始…

「嵌入式系统设计与实现」书评:学习一个STM32的案例

本文最早发表于电子发烧友论坛:【新提醒】【「嵌入式系统设计与实现」阅读体验】 学习一个STM32的案例 - 发烧友官方/活动 - 电子技术论坛 - 广受欢迎的专业电子论坛!https://bbs.elecfans.com/jishu_2467617_1_1.html 感谢电子发烧友论坛和电子工业出版社的赠书。 …

操作系统——大容量存储结构

笔记内容及图片整理自XJTUSE “操作系统” 课程ppt,仅供学习交流使用,谢谢。 大容量存储结构概述 磁盘 磁盘为现代计算机系统提供大量外存。每个盘片为平的圆状(类似CD),普通盘片直径为4.5~9.0厘米。盘片的两面都涂着…