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

Go语言安装使用教程

一、Go 简介

Go(又称 Golang)是由 Google 开发的开源编程语言,具备简单高效、并发支持强、编译快、部署方便等特点,广泛应用于云计算、Web 服务、微服务、容器工具(如 Docker)等场景。


二、Go 安装教程

2.1 支持平台

Go 支持 Windows、macOS 和 Linux 系统。


2.2 Windows 安装

  1. 访问官网:https://golang.org/dl/
  2. 下载 Windows 安装包并运行
  3. 安装完成后自动配置 GOROOT 到环境变量
  4. 打开命令行验证:
go version

2.3 macOS 安装

方法一:使用 Homebrew(推荐)
brew install go
方法二:下载安装包
  • 从官网下载安装 .pkg 文件并安装

验证:

go version

2.4 Linux 安装(以 Ubuntu 为例)

wget https://golang.org/dl/go1.21.1.linux-amd64.tar.gz
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.21.1.linux-amd64.tar.gz# 设置环境变量
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
source ~/.bashrcgo version

三、Go 环境变量说明

变量名含义
GOROOTGo 安装路径(通常自动配置)
GOPATH工作空间路径(默认为 ~/go)
GOBIN可执行文件输出路径

四、编写第一个 Go 程序

4.1 创建 hello.go 文件

package mainimport "fmt"func main() {fmt.Println("Hello, Go!")
}

4.2 运行程序

go run hello.go

4.3 编译为可执行文件

go build hello.go
./hello

五、Go 模块管理

从 Go 1.11 起支持模块系统(go.mod)

初始化模块

go mod init demo

安装依赖

go get github.com/gin-gonic/gin

构建

go build

六、常用命令汇总

命令说明
go run编译并运行 Go 程序
go build编译生成二进制
go test运行测试用例
go get安装依赖包
go mod模块管理工具
go fmt格式化代码

七、推荐开发工具

工具特点
VS Code插件丰富,轻量高效
GoLandJetBrains 出品,功能全面
LiteIDE专为 Go 语言开发设计的 IDE

八、常见问题

Q1: go: command not found?

  • 检查是否正确设置 PATH 环境变量
  • Linux 下记得执行 source ~/.bashrc

Q2: GOPATH 与 GOROOT 的区别?

  • GOROOT 是 Go 的安装目录
  • GOPATH 是你的代码工作区,推荐使用 go module 后不再强依赖 GOPATH

九、参考链接

  • Go 官网
  • Go 中文网
  • Go by Example
  • Go 官方文档

本文由“小奇Java面试”原创发布,转载请注明出处。

可以搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。

在这里插入图片描述

http://www.dtcms.com/a/263429.html

相关文章:

  • Golang的多环境配置
  • 「Java流程控制」while循环
  • Redis 实现消息队列
  • 【软考高项论文】论信息系统项目的质量管理
  • js代码01
  • 【数据分析】环境数据降维与聚类分析教程:从PCA到可视化
  • uniapp+vue2 input不显示明文密码,点击小眼睛显示或隐藏密码
  • “对象创建”模式之原型模式
  • window显示驱动开发—全屏模式
  • SuperGlue:基于图神经网络的特征匹配技术解析
  • 【Linux系统部分】在Linux命令行中写一个简单的shell外壳
  • ansible的剧本文件一般放在什么地方?
  • creo 2.0学习笔记
  • Stanford_CS224W----Machine learning with graph
  • (5)pytest-yield操作
  • 实现ModbusTCP转Profinet网关协议转换功能的网关设备
  • 【python】langgraph环境安装的曲折办法
  • 问题分解提示法:用结构化方法破解LLM复杂任务难题
  • 信创项目oracle数据库迁移到达梦数据库需要会有哪些问题?如何解决?
  • 《Redis可扩展:轻松应对数据增长与流量高峰》
  • Python 数据分析与机器学习入门 (六):Seaborn 可视化技巧,图表更美观
  • 飞算 JavaAI 深度实战:从老项目重构到全栈开发的降本增效密码
  • Windows如何安装beego环境问题解
  • 正交视图三维重建2 笔记 2d线到3d线2 先生成3d线然后判断3d线在不在
  • 推进自动驾驶车辆智能:基于深度学习和多模态LLM的交通标志识别与鲁棒车道检测
  • 告别复杂爬虫!Perplexity AI辅助Python网页抓取
  • 爬虫详解:Aipy打造自动抓取代理工具
  • Day113 切换Node.js版本、多数据源配置
  • RHCSA认证题目练习一(配置网络设置)
  • Centos7在yum当中遇到Could not resolve host: mirrorlist.centos.org解决方案