golang学习笔记——go语言安装及系统环境变量设置
文章目录
- go语言安装
- go env
- go get
- goproxy
- 测试
- 安装 Go 插件
- 安装 Go 插件依赖工具
- 参考资料
- 用户环境变量和系统环境变量
- 用户环境变量
- 系统环境变量
- 示例
- 设置环境变量的步骤
- 设置用户环境变量
- 设置系统环境变量
- 验证环境变量
- 总结
- 2024年最火的5大Go框架
- 1. Gin:高并发接口的“秒回神器”
- 2. Echo:金融大佬的“合规助手”
- 3. Fiber:前端转Go的“逃课神器”
- 4. GoFrame:传统企业IT的“救世主”
- 5. Kratos:B站大佬的“屠龙刀”
go语言安装
下载go1.24.1.windows-amd64.msi
$ go version
go version go1.24.1 windows/amd64
配置三个环境变量:GOROOT、GOPATH、Path
-
添加系统环境变量GOROOT
变量名:GOROOT 变量值:D:\golang
-
修改用户环境变量GOPATH
修改前 C:\Users\username\go 修改后 D:\mygopath
修改到非系统盘符,减少空间占用,系统盘大也可以不修改。
-
修改系统环境变量Path
D:\golang\bin
采用msi安装方式,安装时软件已经自动添加。bin目录下有go.exe和gofmt.exe
go env
输入go env
查看环境配置信息
go env 是 Go 语言提供的一个命令行工具,用于显示当前 Go 环境配置的详细信息。它可以帮助你了解当前 Go 环境的各种设置,包括但不限于 GOPATH、GOROOT、模块路径、编译器路径等相关环境变量和配置。
go get
cd D:\code
goproxy
Bash (Linux or macOS)
# 配置 GOPROXY 环境变量
export GOPROXY=https://goproxy.io,direct
# 还可以设置不走 proxy 的私有仓库或组,多个用逗号相隔(可选)
export GOPRIVATE=git.mycompany.com,github.com/my/private
PowerShell (Windows)
# 配置 GOPROXY 环境变量
$env:GOPROXY = "https://goproxy.io,direct"
# 还可以设置不走 proxy 的私有仓库或组,多个用逗号相隔(可选)
$env:GOPRIVATE = "git.mycompany.com,github.com/my/private"
测试
mkdir hello
cd hello
go mod init hello
touch main.go
接下来, 将如下的代码写入 example.go 中:
package mainimport "github.com/gin-gonic/gin"func main() {r := gin.Default()r.GET("/ping", func(c *gin.Context) {c.JSON(200, gin.H{"message": "pong",})})r.Run() // 监听并在 0.0.0.0:8080 上启动服务
}
下载gin
go get -u github.com/gin-gonic/gin
运行项目
go run main.go
访问http://127.0.0.1:8080/ping
{"message":"pong"}
安装 Go 插件
VSCode 的插件功能中输入 go 关键字,然后找到下图中的插件,并安装。
安装 Go 插件依赖工具
快捷键 Ctrl + Shift + p 打开命令面板,输入go install tools,选择第一项 Go: install/Update Tools
参考资料
使用vscode调试wails项目(golang桌面GUI)
vscode远程免密ssh原理与实操方法
vscode远程开发没有代码提示
用户环境变量和系统环境变量
在 Windows 10 中,环境变量分为两种类型:用户环境变量和系统环境变量。这两种类型的环境变量在优先级上有一定的区别。具体来说,用户环境变量的优先级高于系统环境变量。这意味着,当同时设置了用户环境变量和系统环境变量时,系统会优先使用用户环境变量。
用户环境变量
- 作用范围:仅对当前登录的用户有效。
- 设置位置:
- 右键点击“此电脑”或“计算机” -> 属性 -> 高级系统设置 -> 环境变量 -> 用户变量
- 优先级:较高,优先于系统环境变量。
系统环境变量
- 作用范围:对所有用户和所有进程有效。
- 设置位置:
- 右键点击“此电脑”或“计算机” -> 属性 -> 高级系统设置 -> 环境变量 -> 系统变量
- 优先级:较低,当存在同名用户环境变量时,会被覆盖。
示例
假设你同时设置了用户变量和系统变量 PATH
,内容如下:
- 用户变量 PATH:
C:\Users\YourUser\go\bin
- 系统变量 PATH:
C:\Program Files\Go\bin
在这种情况下,系统会优先使用用户变量 PATH
,即 C:\Users\YourUser\go\bin
。
设置环境变量的步骤
设置用户环境变量
- 右键点击“此电脑”或“计算机” -> 属性 -> 高级系统设置 -> 环境变量。
- 在“用户变量”部分,点击“新建”按钮,添加新的用户变量。
- 输入变量名(如
GOPATH
)和变量值(如C:\Users\YourUser\go
)。 - 点击“确定”保存设置。
设置系统环境变量
- 右键点击“此电脑”或“计算机” -> 属性 -> 高级系统设置 -> 环境变量。
- 在“系统变量”部分,点击“新建”按钮,添加新的系统变量。
- 输入变量名(如
GOPATH
)和变量值(如C:\Go
)。 - 点击“确定”保存设置。
验证环境变量
你可以通过命令提示符或 PowerShell 来验证环境变量是否设置正确:
echo %GOPATH%
或
echo $env:GOPATH
总结
- 用户环境变量优先级高于系统环境变量。
- 如果同时设置了同名的用户环境变量和系统环境变量,系统会优先使用用户环境变量。
- 用户环境变量只对当前登录用户有效,而系统环境变量对所有用户和所有进程有效。
希望这些信息对你有帮助!如果有更多问题,欢迎继续提问。
2024年最火的5大Go框架
1. Gin:高并发接口的“秒回神器”
适用人群:追求极致性能的API狂人
- 场景:社交平台消息推送、电商秒杀系统
- 真实案例:某短视频App用Gin重构推送服务,单机扛住10万QPS,运维小哥终于不用半夜爬起来扩容了!
- 坑点预警:功能太“素”,复杂业务得自己造轮子,新手慎入!
2. Echo:金融大佬的“合规助手”
适用人群:强迫症式代码洁癖患者
- 场景:支付系统、风控平台
- 真实案例:某银行用Echo搭跨境转账接口,参数校验错误率直降85%,再也不用背“锅”了!
- 吐槽:中间件顺序写错?恭喜你喜提“玄学BUG”大礼包!
3. Fiber:前端转Go的“逃课神器”
适用人群:想逃离JavaScript“苦海”的全栈仔
- 场景:快速验证产品原型、小团队全栈开发
- 真实案例:3人小团队用Fiber+React两天撸出在线协作工具,投资人当场打款!
- 扎心真相:底层用了非标库,第三方插件兼容?自求多福吧!
4. GoFrame:传统企业IT的“救世主”
适用人群:受够Java臃肿架构的“转型难民”
- 场景:ERP系统、政府政务平台
- 真实案例:某车企用GoFrame重构供应链系统,开发效率提升40%,项目经理笑出法令纹!
- 警告:用了它,你就和“简洁”二字彻底说再见了!
5. Kratos:B站大佬的“屠龙刀”
适用人群:立志挑战“双11级别”流量的狠人
- 场景:亿级用户平台、分布式微服务
- 真实案例:某直播平台用Kratos扛住顶流明星塌房事件,服务器稳如老狗,运维集体跪了!
- 劝退指南:10人以下团队别碰!分分钟被DDD架构绕晕!
相关文章:
golang学习笔记——go语言安装及系统环境变量设置
文章目录 go语言安装go envgo getgoproxy测试安装 Go 插件安装 Go 插件依赖工具参考资料用户环境变量和系统环境变量用户环境变量系统环境变量示例设置环境变量的步骤设置用户环境变量设置系统环境变量 验证环境变量总结 2024年最火的5大Go框架1. Gin:高并发接口的“…...
云服务器Linux安装Docker
系统要求 Docker 官方建议将 Docker 运行在 Linux系统上,当然也可以在其他平台运行,本篇博客只介绍在 Linux 系统上的安装方法。 Docker 运行在 CentOS7.X 版本以上,本文使用阿里云 ECS 云服务器 CentOS 7.4 版本。 Docker 需要安装在 64 …...
2025DNS二级域名分发PHP网站源码
安装教程 1.程序必须使用PHP8.1 2.将扩展ixed.8.1.lin放入/www/server/php/81/lib/php/extensions/no-debug-non-zts-20210902 3.打开宝塔→软件商店→PHP8.1→配置文件 4.放入:extensionixed.8.1.lin 5.重启PHP8.1 6.新建站点(mysql5.6-5.7andPHP8.1&a…...
审批流AntV框架蚂蚁数据可视化X6饼图(附注释)
大家好,这次使用的是AntV的蚂蚁数据可视化X6框架,类似于审批流的场景等,代码如下: X6框架参考网址:https://x6.antv.vision/zh/examples/showcase/practices#bpmn 可以进入该网址,直接复制下方代码进行调试…...
git 添加额外的远程仓库 URL
要使用 git branch -a 查看 net-next 远程仓库中的所有分支,请按照以下步骤操作: 步骤 1: 确保已添加 net-next 远程仓库 如果尚未添加 net-next 远程仓库,请运行以下命令: git remote add net-next git://git.kernel.org/pub/s…...
Qt中实现多个QMainWindow同时显示
在Qt中实现多个QMainWindow同时显示,可通过以下方法实现: 一、直接显示多个实例 必须使用new创建堆对象,避免栈对象因作用域结束被销毁。 int main(int argc, char *argv[]) {QApplication a(argc, argv);// 创建两个独立的主窗口QMainW…...
在ArcMap中通过Python编写自定义工具(Python Toolbox)实现点转线工具
文章目录 一、需求二、实现过程2.1、创建Python工具箱(.pyt)2.2、使用catalog测试代码2.3、在ArcMap中使用工具 三、测试 一、需求 通过插件的形式将点转线功能嵌入ArcMap界面,如何从零开始创建一个插件,包括按钮的添加、工具的实…...
关于AI数据分析可行性的初步评估
一、结论:可在部分环节嵌入,无法直接处理大量数据 1.非本地部署的AI应用处理非机密文件没问题,内部文件要注意数据安全风险。 2.AI(指高规格大模型)十分适合探索性研究分析,对复杂报告无法全流程执行&…...
cdn取消接口缓存
添加cdn后,使用cdn加速域名访问接口 是缓存,不是最新的数据,如果使用局域网则是最新的数据,如果修改配置,确保使用cdn域名请求的接口返回不是缓存 要确保通过CDN加速域名访问接口时返回的是最新的数据,而不…...
Android 屏幕适配 Tips
概念 屏幕尺寸:屏幕的对角线的长度屏幕分辨率:屏幕分辨率是指在横纵向上的像素点数,单位是px,1px1个像素点。一般以纵向像素x横向像素,如1960x1080屏幕像素密度:每英寸上的像素点数,单位是dpi …...
【Academy】HTTP Host 标头攻击 ------ HTTP Host header attacks
HTTP Host 标头攻击 ------ HTTP Host header attacks 1. 什么是 HTTP Host 标头?2. 什么是 HTTP Host 标头攻击?3. HTTP Host 标头漏洞是如何产生的?4. 如何测试 HTTP Host 标头漏洞4.1 提供任意 Host 标头4.2 检查有缺陷的验证4.3 发送不明…...
大模型架构记录2
一 应用场景 1.1 prompt 示例 1.2 自己搭建一个UI界面,调用接口 可以选用不同的模型,需要对应的API KEY 二 Agent 使用 2.1 构建GPT...
在Windows 11的WSL中安装Kali Linux
Kali Linux 是网络安全从业者和爱好者的首选工具集,但直接在物理机或虚拟机上运行可能占用较多资源。借助 Windows Subsystem for Linux (WSL),我们可以在Windows 11中原生运行Kali Linux,轻量且高效。本教程将手把手教你如何在WSL2中安装并配…...
Qt调试功能使用方法
QT编程环境 QT在Windows操作系统下的三种编程环境搭建。 方案编程环境编译器调试器1Qt CreatorMinGW GCCGDB2Qt CreatorMicrosoft Visual C CompilerDebugging Tools for Widows3Microsoft Visual Studio VS自带VS自带 方案提及的QT安装程序及压缩包均能在官网Index of /off…...
一篇文章讲解清楚ARM9芯片启动流程
SAM9X60 ARM9 boot启动流程关键词介绍: 第一级bootloader - 也叫boot ROM,是集成在MPU内部的ROM里面 它的主要功能是执行对MPU的基本初始化和配置,查找并将第二级bootloader从外部NVM中读取出来并放到MPU内部的SRAM. 可以让MPU强制停留在第一…...
DeepSeek未来发展趋势:开创智能时代的新风口
DeepSeek未来发展趋势:开创智能时代的新风口 随着人工智能(AI)、深度学习(DL)和大数据的飞速发展,众多创新型技术已经逐渐走向成熟,而DeepSeek作为这一领域的新兴力量,正逐步吸引越…...
Spring Boot与Axon Framework整合教程
精心整理了最新的面试资料和简历模板,有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 简介 Axon Framework是一个用于构建CQRS(命令查询职责分离)和事件溯源(Event Sourcing)应用的框架࿰…...
从技术角度看大语言模型进化技术路线与落地应用详解:未来的最佳实践方向是什么?
文章大纲 **一、模型架构创新:从Transformer到下一代架构****二、训练与优化技术:从暴力Scaling到精细调控****三、数据与知识工程:从粗放喂养到智能增强****四、应用层进化:从通用能力到垂直场景突破****五、伦理与可持续性技术**未来技术路线图参考文献**一、大模型架构创…...
LSM-Tree (日志结构合并树)
LSM-Tree(日志结构合并树)是一种高效处理写操作的存储结构,广泛应用于NoSQL数据库如LevelDB和RocksDB。其核心思想是将随机写入转换为顺序写入,提升吞吐量。以下是其原理及Java实现示例: ### **LSM-Tree 原理** 1. **…...
自动驾驶---不依赖地图的大模型轨迹预测
1 前言 早期传统自动驾驶方案通常依赖高精地图(HD Map)提供道路结构、车道线、交通规则等信息,可参考博客《自动驾驶---方案从有图迈进无图》,本质上还是存在问题: 数据依赖性高:地图构建成本昂贵,且跨区域泛化能力受限。动态场景局限性:地图无法实时反映临时障碍物或施…...
记录一次mysql全文索引不生效
先是创建全文索引: alter table sms_img_library add fulltext index sms_img_library_title_idx(title) 但是执行下面sql,没有数据出来 select * from sms_img_library where match (title) against(壮丽);排查了最小分词,设置为2 SHOW…...
蓝桥杯题型
蓝桥杯 蓝桥杯题型分类语法基础艺术与篮球(日期问题)时间显示(时间问题)跑步计划(日期问题)偶串(字符)最长子序列(字符)字母数(进制转换)6个0&…...
用Python分割并高效处理PDF大文件
在处理大型PDF文件时,将它们分解成更小、更易于管理的块通常是有益的。这个过程称为分区,它可以提高处理效率,并使分析或操作文档变得更容易。在本文中,我们将讨论如何使用Python和为Unstructured.io库将PDF文件划分为更小的部分。…...
DeepSeek×博云AIOS:突破算力桎梏,开启AI普惠新纪元
背景 在全球人工智能技术高速迭代的背景下,算力成本高企、异构资源适配复杂、模型部署效率低下等问题,始终是制约企业AI规模化应用的关键。 DeepSeek以创新技术直击产业痛点,而博云先进算力管理平台AIOS的全面适配,则为这一技术…...
顶点着色器和片段着色器
在Unity渲染中,**顶点着色器(Vertex Shader)和片段着色器(Fragment Shader)**是图形渲染管线中的两个核心阶段。我们可以通过一个比喻来理解它们的分工:想象你要画一幅由三角形组成的3D模型,顶点…...
Uniapp打包H5端弱网络环境下存在页面UI渲染错乱问题方案实现
一.需求 uniapp打包的H5项目,首页模块的业务逻辑偏多,调用的接口数量庞大,在弱网络的情况下切换了页面或者网络较好但是页面的UI未渲染完成的情况下快速地切换了页面会出现UI渲染错乱的问题,针对该问题个人从两个方面来进行处理&…...
Dify+DeepSeek | Excel数据一键可视化(创建步骤案例)(echarts助手.yml)(文档表格转图表、根据表格绘制图表、Excel绘制图表)
Dify部署参考:Dify Rag部署并集成在线Deepseek教程(Windows、部署Rag、安装Ragan安装、安装Dify安装、安装ollama安装) DifyDeepSeek - Excel数据一键可视化(创建步骤案例)-DSL工程文件(可直接导入&#x…...
## DeepSeek写水果记忆配对手机小游戏
DeepSeek写水果记忆配对手机小游戏 提问 根据提的要求,让DeepSeek整理的需求,进行提问,内容如下: 请生成一个包含以下功能的可运行移动端水果记忆配对小游戏H5文件: 要求 可以重新开始游戏 可以暂停游戏 卡片里的水果…...
Windows系统编程(八)线程同步
线程安全问题 每个线程都有自己独立的堆栈,局部变量是存储在栈中的,这就意味着每个线程都会有一份自己的局部变量,当线程仅仅访问自己的局部变量时就不存在线程安全问题。但是全局变量是存储在全局区的,多线程共享全局变量&#…...
create_react_agent 函数,根据创建的 chat 模型实例和工具列表 tools 构造一个“反应式代理”(react agent)
graph create_react_agent(chat, tools)1. create_react_agent 函数的作用 create_react_agent 是一个工厂函数,它接收两个参数: chat 模型实例(这里是 ChatOpenAI 的对象):它负责生成语言模型的回复,也…...
Unity ECS与MonoBehaviour混合架构开发实践指南
一、混合架构设计背景 1. 技术定位差异 ECS(Entity Component System):面向数据设计(DOD),适用于大规模实体计算(如10万单位战斗) MonoBehaviour:面向对象设计&#x…...
在Linux中开发OpenGL——检查开发环境对OpenGL ES的支持
由于移动端GPU规模有限,厂商并没有实现完整的OpenGL特性,而是实现了它的子集——OpenGL ES。因此如果需要开发的程序要支持移动端平台,最好使用OpenGL ES开发。 1、 下载支持库、OpenGL ES Demo 1.1、下载PowerVRSDK支持库作为准备ÿ…...
「DataX」数据迁移-IDEA运行DataX方法总结
背景 业务需求希望把Oracle数据库中的数据,迁移至MySql数据库中,因为需要迁移全量和增量的数据,所以希望想用数据迁移工具进行操作。 经过一些调研查询,最终打算使用DataX进行数据的迁移。 DataX简单介绍 DataX 是阿里云 DataW…...
python从入门到精通(二十六):python文件操作之Word全攻略(基于python-docx)
python文件操作之word技巧大全 word技巧基础到高级操作大全A.准备工作1. 安装python-docx库2. 导入库 B.基础操作1. 创建Word文档1.1 创建文档对象1.2 添加word标题1.3 添加word段落1.4 设置段落样式1.5 创建有序列表1.6 创建无序列表1.7添加word分页1.8 添加word图片1.9 添加w…...
STM32 ST-LINK Utility 切换 NRST_MODE 后下载失败问题
在使用 STM32 ST-LINK Utility 烧录时,有需要改变芯片选择复位的时候需要修改 Option Bytes 中的 NRST_MODE 选项,可能会遇见 “Programming error 0x8000200!” 的错误,后面不管是取消读写加密还是复位都不能下载,包括再用 keil …...
【算法】010、合并两个有序链表
【算法】010、合并两个有序链表 文章目录 一、合并两个有序链表1.1 思路1.2 多语言解法 一、合并两个有序链表 1.1 思路 // go package mainimport ("fmt""strconv" )type ListNode struct {Val intNext *ListNode }func (n *ListNode) String() (ans s…...
FreeRTOS任务状态查询
一.任务相关API vTaskList(),创建一个表格描述每个任务的详细信息 char biaoge[1000]; //定义一个缓存 vTaskList(biaoge); //将表格存到这缓存中 printf("%s /r/n",biaoge); 1.uxTaskPriorityGet(…...
Django小白级开发入门
1、Django概述 Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T。 Django 框架的核心组件有: 用于创建模型的对象关系映射为最终用户设计较好的管理界面URL 设计设计者友好的模板…...
R语言的基础命令及实例操作
> T & F [1] FALSE > T & T [1] TRUE > T | F [1] TRUE > F | F [1] FALSE > a <- c(T,F,T) > b <- c(F,F,T) > a & b [1] FALSE FALSE TRUE > a | b [1] TRUE FALSE TRUE 在 R 中,大小写是敏感的,也就是说…...
通用信息抽取大模型PP-UIE开源发布,强化零样本学习与长文本抽取能力,全面适配多场景任务
背景与简介 信息抽取(information extraction)是指,从非结构化或半结构化数据(如自然语言文本)中自动识别、提取并组织出结构化信息。通常包含多个子任务,例如:命名实体识别(NER&am…...
【玩转正则表达式】将正则表达式中的分组(group)与替换进行结合使用
在文本处理和数据分析领域,正则表达式(Regular Expressions,简称regex)是一种功能强大的工具。它不仅能够帮助我们匹配和搜索字符串中的特定模式,还能通过分组(Grouping)和替换(Subs…...
Kotlin和Java区别
哈哈哈,前段时间,面试的时候,突然问到我Kotlin和Java的区别,一下子把我问懵逼了,确实没遇到问这个的,想了下,说了下Kotlin的编译时空检查机制,代码更简洁,很多封装好的AP…...
大语言模型进化论:从达尔文到AI的启示与展望
文章大纲 引言大语言模型中的“进化论”思想体现遗传变异过度繁殖和生存斗争大模型“过度繁殖”与“生存竞争”机制解析**一、过度繁殖:技术迭代的指数级爆发****二、生存竞争:计算资源的达尔文战场****三、生存竞争胜出关键要素****四、行业竞争格局演化趋势**核心结论自然选…...
Django系列教程(5)——Django模型详解
目录 模型定义小案例 模型的组成 模型的字段 基础字段 关系字段 on_delete删除选项 related_name选项 模型的META选项 模型的方法 标准方法 示例一:自定义方法 示例二:自定义Manager方法 完美的高级Django模型示例 小结 Model (模型) 简而…...
2008-2024年中国手机基站数据/中国移动通信基站数据
2008-2024年中国手机基站数据/中国移动通信基站数据 1、时间:2008-2024年 2、来源:OpenCelliD 3、指标:网络类型、网络代数、移动国家/地区、移动网络代码、区域代码、小区标识、单元标识、坐标经度、坐标纬度、覆盖范围、测量样本数、坐标…...
Java在word中动态增加表格行并写入数据
SpringBoot项目中在word中动态增加表格行并写入数据,不废话,直接上配置和代码: 模板内容如下图所示: 模板是一个空word表格即可,模板放在resources下的自定义目录下,如下图示例。 实体类定义如下: @Data @AllArgsConstructor @NoArgsConstructor public class Person …...
记录小白使用 Cursor 开发第一个微信小程序(二):创建项目、编译、预览、发布(250308)
文章目录 记录小白使用 Cursor 开发第一个微信小程序(二):创建项目、编译、预览、发布(250308)一、创建项目1.1 生成提示词1.2 生成代码 二、编译预览2.1 导入项目2.2 编译预览 三、发布3.1 在微信开发者工具进行上传3…...
JavaScript基础-比较运算符
在JavaScript编程中,比较运算符用于比较两个值,并返回一个布尔值(true或false),这对于我们进行条件判断和逻辑控制至关重要。掌握这些运算符不仅有助于编写高效的代码,也是处理复杂逻辑的基础。本文将详细介…...
2025 docker安装TiDB数据库
1.确保安装了docker和docker-compose sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composesudo chmod x /usr/local/bin/docker-compose2.编写 Docker Compose 文…...
【大学生体质】智能 AI 旅游推荐平台(Vue+SpringBoot3)-完整部署教程
智能 AI 旅游推荐平台开源文档 项目前端地址 ☀️项目介绍 智能 AI 旅游推荐平台(Intelligent AI Travel Recommendation Platform)是一个利用 AI 模型和数据分析为用户提供个性化旅游路线推荐、景点评分、旅游攻略分享等功能的综合性系统。该系统融合…...