当前位置: 首页 > news >正文

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.lryc.cn/news/499499.html

相关文章:

  • 导体、半导体和绝缘体
  • shell 6 if条件判断与for循环结构 (泷羽sec)
  • MetaGPT 安装
  • 论文阅读:Single-cell transcriptomics of 20 mouse organs creates a Tabula Muris
  • 图生3d 图生全景 学习笔记
  • 分库分表—4.数据迁移系统文档
  • HAMR技术进入云存储市场!
  • Vulnhub---kioptirx5 超详细wp
  • 单片机状态机实现多个按键同时检测单击、多击、长按等操作
  • oracle之用户的相关操作
  • 黑马redis
  • HCIA-Access V2.5_1_2 PON技术的特点、优势与典型应用
  • css部分
  • 【TCP 网络通信(发送端 + 接收端)实例 —— Python】
  • LSTM+改进的itransformer时间序列预测模型代码
  • Apache-HertzBeat 开源监控默认口令登录
  • Delete Number
  • Linux常用快捷键
  • 针对xpath局限的解决方案
  • 深入解析 HTML Input 元素:构建交互性表单的核心
  • ffmpeg转码与加水印
  • Leetcode 104. 二叉树的最大深度(Java-深度遍历)
  • 阳明心学-传习录学习总结
  • macOS sequoia 15.1中应用程序“程序坞”没有权限打开
  • 使用 MinIO 和 KKFileView 实现在线文件预览功能
  • Conda-Pack打包:高效管理Python环境
  • 云服务器上搭建 WordPress 全流程指南
  • 图像超分辨率技术新进展:混合注意力聚合变换器HAAT
  • 文件IO——01
  • 【opencv入门教程】5. Mat 类用法