环境安装与配置:全面了解 Go 语言的安装与设置
在学习 Go 语言之前,首先需要确保开发环境已正确安装和配置。本部分将详细介绍如何在不同平台(Windows、macOS 和 Linux)上安装 Go 语言,以及如何进行环境变量配置和工作空间的设置。
一、安装 Go 语言
1. Windows 安装方法
-
下载 Go 安装包
- 打开Go官方下载页面。
- 选择适合您系统的安装包(通常是
go<version>.windows-amd64.msi)。
-
安装 Go
- 下载完成后,双击运行安装程序。
- 按照安装向导的步骤操作,通常包含以下步骤:
- 接受许可协议。
- 选择安装路径(默认路径为
C:Go,建议使用默认值)。 - 点击安装。
-
验证安装
-
打开命令提示符(
Win + R,输入cmd)。 -
输入以下命令,检查 Go 是否已正确安装:
go version -
如果显示类似
go version go1.XX windows/amd64的信息,则说明安装成功。
-
2. macOS 和 Linux 安装方法
方法一:使用官方安装包
-
下载 Go 安装包
- 访问Go官方下载页面。
- 下载适用于 macOS(
go<version>.darwin-arm64.pkg或go<version>.darwin-amd64.pkg)或 Linux 的安装包(tar.gz格式)。
-
安装 Go(macOS)
- 对于
.pkg文件,双击运行安装程序,按照提示操作即可。 - 默认安装路径为
/usr/local/go。
- 对于
-
安装 Go(Linux)
-
打开终端,运行以下命令:
sudo tar -C /usr/local -xzf go<version>.linux-amd64.tar.gz -
确保将
<version>替换为实际版本号。
-
方法二:通过包管理器安装
-
macOS(Homebrew 安装)
-
打开终端,运行以下命令:
brew install go
-
-
Linux(APT 或 YUM 安装)
-
Ubuntu/Debian 系统:
sudo apt update sudo apt install golang -
CentOS/RHEL 系统:
sudo yum install golang
-
验证安装
-
打开终端,输入以下命令:
go version -
如果显示类似
go version go1.XX darwin/arm64或go version go1.XX linux/amd64的信息,说明安装成功。
二、配置 Go 环境
1. 设置工作空间
Go 使用工作空间(Workspace)来组织项目文件,默认的工作空间目录结构如下:
$GOPATH/├── bin/├── pkg/└── src/
src:存放源代码文件。pkg:存放编译生成的包文件。bin:存放可执行文件。
建议:将
GOPATH指向一个专门的开发目录,例如:
- Windows:
C:Users<your-username>go- macOS/Linux:
/Users/<your-username>/go
2. 配置环境变量
Windows 配置
-
打开系统环境变量设置:
- 右键此电脑→属性→高级系统设置→环境变量。
-
在用户变量中添加:
- 变量名:
GOPATH - 变量值:工作空间路径,例如
C:Users<your-username>go
- 变量名:
-
在系统变量中检查
PATH,如果没有C:Goin,则添加:;C:Goin -
验证环境变量
-
打开命令提示符,运行以下命令:
go env -
确保
GOPATH和GOROOT正确配置。
-
macOS/Linux 配置
-
编辑 Shell 配置文件:
- 如果使用
bash,编辑~/.bashrc或~/.bash_profile。 - 如果使用
zsh,编辑~/.zshrc。
- 如果使用
-
添加以下内容:
export GOROOT=/usr/local/go export GOPATH=$HOME/go export PATH=$PATH:$GOROOT/bin:$GOPATH/bin -
保存文件后,运行以下命令使配置生效:
source ~/.bashrc -
验证环境变量
-
打开终端,运行:
go env -
检查
GOPATH和GOROOT是否正确。
-
三、验证 Go 开发环境
完成安装和配置后,您可以通过以下方式验证开发环境是否正常运行:
-
创建测试项目
-
在工作空间的
src目录下创建一个测试目录:mkdir -p $GOPATH/src/hello cd $GOPATH/src/hello -
创建文件
main.go,内容如下:package mainimport "fmt"func main() {fmt.Println("Hello, Go!") }
-
-
运行程序
-
打开终端,切换到项目目录,执行以下命令:
go run main.go -
如果输出
Hello, Go!,说明开发环境已成功配置。
-
-
编译并生成可执行文件
-
执行以下命令:
go build -
在项目目录下生成可执行文件
hello(Windows 下为hello.exe)。
-
四、总结
通过以上步骤,您已经完成了 Go 语言开发环境的安装与配置:
- 在不同平台上安装 Go。
- 配置工作空间与环境变量。
- 验证 Go 语言开发环境是否正常运行。
相关文章:
环境安装与配置:全面了解 Go 语言的安装与设置
在学习 Go 语言之前,首先需要确保开发环境已正确安装和配置。本部分将详细介绍如何在不同平台(Windows、macOS 和 Linux)上安装 Go 语言,以及如何进行环境变量配置和工作空间的设置。 一、安装 Go 语言 1. Windows 安装方法 下载…...
LLM幻觉(Hallucination)缓解技术综述与展望
LLMs 中的幻觉问题(LLM 幻觉:现象剖析、影响与应对策略)对其可靠性与实用性构成了严重威胁。幻觉现象表现为模型生成的内容与事实严重不符,在医疗、金融、法律等对准确性要求极高的关键领域,可能引发误导性后果&#x…...
基于物联网设计的疫苗冷链物流监测系统
一、前言 1.1 项目开发背景 随着全球经济的发展和物流行业的不断创新,疫苗和生物制品的运输要求变得越来越高。尤其是疫苗的冷链物流,温度、湿度等环境因素的控制直接关系到疫苗的质量和效力,因此高效、可靠的冷链监控系统显得尤为重要。冷…...
C++的类Class
文章目录 一、C的struct和C的类的区别二、关于OOP三、举例:一个商品类CGoods四、构造函数和析构函数1、定义一个顺序栈2、用构造和析构代替s.init(5);和s.release();3、在不同内存区域构造对象4、深拷贝和浅拷贝5、构造函数和深拷贝的简单应用6、构造函数的初始化列…...
接口 V2 完善:分布式环境下的 WebSocket 实现与 Token 校验
🎯 本文档详细介绍了如何使用WebSocket协议优化客户端与服务端之间的通信,特别是在处理异步订单创建通知的场景中。通过引入WebSocket代替传统的HTTP请求-响应模式,实现了服务器主动向客户端推送数据的功能,极大地提高了实时性和效…...
使用Ollama 在Ubuntu运行deepseek大模型:以DeepSeek-coder为例
DeepSeek大模型这几天冲上热搜啦! 咱们来亲身感受下DeepSeek模型的魅力吧! 整个操作流程非常简单方便,只需要2步,先安装Ollama,然后执行大模型即可。 安装Ollama 在Ubuntu下安装Ollama非常简单,直接sna…...
Java阶段四06
第4章-第6节 一、知识点 geospatial、hyperloglog、bitmap、事务、Jedis、SpringBoot集成Redis 二、目标 了解三种特殊数据类型的使用 理解什么是Redis事务 学会使用Redis事务 掌握使用JAVA代码操作Redis 三、内容分析 重点 理解什么是Redis事务 学会使用Redis事务 掌…...
2025年数学建模美赛:A题分析(1)Testing Time: The Constant Wear On Stairs
2025年数学建模美赛 A题分析(1)Testing Time: The Constant Wear On Stairs 2025年数学建模美赛 A题分析(2)楼梯磨损分析模型 2025年数学建模美赛 A题分析(3)楼梯使用方向偏好模型 2025年数学建模美赛 A题分…...
题2025年春节 — 五言绝句一首,Hip-Hop一首
题 2025年春节 (五言绝句) 朔 气 寒 千 古,萧 萧 冷 地 空。 千 门 坐 暖 室,看 雪 一 清 冬。 题 2025年春节 (HipHop) 这寒风都吹了几十亿年,没什么新奇的; 那黄叶萧瑟遍布了地球,每年都一样的。 小年过了是大年&…...
WPF常见面试题解答
以下是WPF(Windows Presentation Foundation)面试中常见的问题及解答,涵盖基础概念、高级功能和实际应用,帮助你更好地准备面试: 基础概念 什么是WPF? WPF是微软开发的用于构建桌面应用程序的UI框架&#x…...
使用Vue3实现可拖拽的九点导航面板
开篇 本文使用Vue3实现了一个可拖拽的九宫导航面板。这个面板在我这里的应用场景是我个人网站的首页的位置,九宫导航对应的是用户最后使用或者最多使用的九个功能,正常应该是由后端接口返回的,不过这里为了简化,写的是固定的数组数…...
68-《贝壳花》
贝壳花 贝壳花(学名:Moluccella laevis Linn.)是属于唇形科,贝壳花是一、二年的草本。植株高5至60cm,茎四棱,不分枝。叶对生,心脏状圆形,边缘疏生齿牙;叶柄和叶近等长。花…...
C++ Lambda 表达式的本质及原理分析
目录 1.引言 2.Lambda 的本质 3.Lambda 的捕获机制的本质 4.捕获方式的实现与底层原理 5.默认捕获的实现原理 6.捕获 this 的机制 7.捕获的限制与注意事项 8.总结 1.引言 C 中的 Lambda 表达式是一种匿名函数,最早在 C11 引入,用于简化函数对象的…...
深入理解三高架构:高可用性、高性能、高扩展性的最佳实践
引言 在现代互联网环境下,随着用户规模和业务需求的快速增长,系统架构的设计变得尤为重要。为了确保系统能够在高负载和复杂场景下稳定运行,"三高架构"(高可用性、高性能、高扩展性)成为技术架构设计中的核…...
【自然语言处理(NLP)】深度循环神经网络(Deep Recurrent Neural Network,DRNN)原理和实现
文章目录 介绍深度循环神经网络(DRNN)原理和实现结构特点工作原理符号含义公式含义 应用领域优势与挑战DRNN 代码实现 个人主页:道友老李 欢迎加入社区:道友老李的学习社区 介绍 **自然语言处理(Natural Language Pr…...
2025数学建模美赛|F题成品论文
国家安全政策与网络安全 摘要 随着互联网技术的迅猛发展,网络犯罪问题已成为全球网络安全中的重要研究课题,且网络犯罪的形式和影响日益复杂和严重。本文针对网络犯罪中的问题,基于多元回归分析和差异中的差异(DiD)思…...
自定义数据集 使用pytorch框架实现逻辑回归并保存模型,然后保存模型后再加载模型进行预测
代码: import torch import numpy as np import torch.nn as nn# 定义数据:x_data 是特征,y_data 是标签(目标值) data [[-0.5, 7.7],[1.8, 98.5],[0.9, 57.8],[0.4, 39.2],[-1.4, -15.7],[-1.4, -37.3],[-1.8, -49.…...
【MQ】如何保证消息队列的高可用?
RocketMQ NameServer集群部署 Broker做了集群部署 主从模式 类型:同步复制、异步复制 主节点返回消息给客户端的时候是否需要同步从节点 Dledger:要求至少消息复制到半数以上的节点之后,才给客户端返回写入成功 slave定时从master同步数据…...
本地大模型编程实战(04)给文本自动打标签
文章目录 准备实例化本地大模型情感分析更精细的控制总结代码 使用本地大模型可以根据需要给文本打标签,本文介绍了如何基于 langchain 和本地部署的大模型给文本打标签。 本文使用 llama3.1 作为本地大模型,它的性能比非开源大模型要查一下,…...
关于使用PHP时WordPress排错——“这意味着您在wp-config.php文件中指定的用户名和密码信息不正确”的解决办法
本来是看到一位好友的自己建站,所以突发奇想,在本地装个WordPress玩玩吧,就尝试着装了一下,因为之前电脑上就有MySQL,所以在自己使用PHP建立MySQL时报错了。 最开始是我的php启动mysql时有问题,也就是启动过…...
【蓝桥杯】43694.正则问题
题目描述 考虑一种简单的正则表达式: 只由 x ( ) | 组成的正则表达式。 小明想求出这个正则表达式能接受的最长字符串的长度。 例如 ((xx|xxx)x|(x|xx))xx 能接受的最长字符串是: xxxxxx,长度是 6。 输入描述 一个由 x()| 组成的正则表达式。…...
服务器虚拟化技术详解与实战:架构、部署与优化
📝个人主页🌹:一ge科研小菜鸡-CSDN博客 🌹🌹期待您的关注 🌹🌹 引言 在现代 IT 基础架构中,服务器虚拟化已成为提高资源利用率、降低运维成本、提升系统灵活性的重要手段。通过服务…...
git困扰的问题
.gitignore中添加的某个忽略文件并不生效 把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效, gitignore只能忽略那些原来没有被追踪的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。 解决方…...
jvm--类的生命周期
学习类的生命周期之前,需要了解一下jvm的几个重要的内存区域: (1)方法区:存放已经加载的类信息、常量、静态变量以及方法代码的内存区域 (2)常量池:常量池是方法区的一部分&#x…...
定制Centos镜像(一)
环境准备: 一台最小化安装的干净的系统,这里使用Centos7.9,一个Centos镜像,镜像也使用Centos7.9的。 [rootlocalhost ~]# cat /etc/system-release CentOS Linux release 7.9.2009 (Core) [rootlocalhost ~]# rpm -qa | wc -l 306 [rootloca…...
C语言------数组思维导图
...
TensorFlow实现逻辑回归模型
逻辑回归是一种经典的分类算法,广泛应用于二分类问题。本文将介绍如何使用TensorFlow框架实现逻辑回归模型,并通过动态绘制决策边界和损失曲线来直观地观察模型的训练过程。 数据准备 首先,我们准备两类数据点,分别表示两个不同…...
《十七》浏览器基础
浏览器:是安装在电脑里面的一个软件,能够将页面内容渲染出来呈现给用户查看,并让用户与网页进行交互。 常见的主流浏览器: 常见的主流浏览器有:Chrome、Safari、Firefox、Opera、Edge 等。 输入 URL,浏览…...
Windows 靶机常见服务、端口及枚举工具与方法全解析:SMB、LDAP、NFS、RDP、WinRM、DNS
在渗透测试中,Windows 靶机通常会运行多种服务,每种服务都有其默认端口和常见的枚举工具及方法。以下是 Windows 靶机常见的服务、端口、枚举工具和方法的详细说明: 1. SMB(Server Message Block) 端口 445/TCP&…...
IME关于输入法横屏全屏显示问题-Android14
IME关于输入法横屏全屏显示问题-Android14 1、输入法全屏模式updateFullscreenMode1.1 全屏模式判断1.2 全屏模式布局设置 2、应用侧关闭输入法全屏模式2.1 调用输入法的应用设置flag2.2 继承InputMethodService.java的输入法应用覆盖onEvaluateFullscreenMode方法 InputMethod…...
