云原生第一步:Windows Go环境极速配置

前言

Go 语言(又称 Golang)是一种开源的编程语言,它简洁、高效,具有强大的并发处理能力和快速的编译速度,被广泛应用于云原生、微服务、大数据等领域。随着技术的发展,越来越多的开发者开始关注并尝试使用 Go 语言。

在 Windows 环境下安装 Go 语言并搭建开发环境,是开启 Go 语言学习和开发之旅的第一步。本文将详细讲解在 Windows 环境下安装 Go 语言的步骤,包括环境准备、安装过程、配置环境变量以及编写并运行第一个 Go 程序等内容,帮助读者顺利搭建 Go 语言的开发环境。

一、环境准备

  • 操作系统 :确保计算机安装的是 Windows 7 及以上版本的 Windows 操作系统。
  • 硬件要求 :Go 语言对硬件要求不高,但为了获得更好的性能体验,建议计算机至少配备 2GB 内存,同时有足够的磁盘空间来安装 Go 语言及其相关组件。
  • 网络连接 :在安装过程中需要下载 Go 语言安装包以及可能需要的其他工具或插件,因此要确保计算机连接到互联网。

二、下载安装

2.1 下载

官网下载

打开浏览器,访问Go的官方网站:go.dev/dl/

如官网下载比较慢,也可已从Go中文网下载

Go中文网

下载Go安装包,地址:studygolang.com/dl,根据电脑版本进行下载,此处我下载的是windows版本,

2.2 安装

下载完成后,双击运行安装包,开始Go的安装

自定义安装路径,建议在指定目录下新建Go目录

安装完成如下图:

Go语言开发包在Windows系统中的安装目录

Go安装根目录(GOROOT)

作用:存放Go语言核心开发工具链与标准库,由安装程序自动创建。

关键子目录结构

目录路径 内容说明
bin 核心可执行文件:
- go.exe​:Go语言编译器和包管理工具
- gofmt.exe​:代码格式化工具
- godoc.exe​:文档生成工具
src 标准库源码:
- fmt​:格式化I/O实现源码
- net​:网络通信库源码
- os​:操作系统接口源码
pkg 编译后的标准库归档文件:
- windows_amd64​:Windows 64位平台编译结果(如fmt.a​, math.a​)
- tool​:内部工具链组件
lib 运行时依赖:
- time​:时区数据库文件(用于time.LoadLocation)
api 版本API兼容性描述文件(用于go命令版本检查)
misc 辅助工具:
- cgo​:C语言交互工具
- ios/​:iOS交叉编译支持(需额外配置)

2.3 验证

快捷键win+r​输入cmd​回车执行命令go version​ 可查看对应版本号~

go 复制代码
go version

2.4 环境变量配置

此电脑​ -> 属性​ -> 高级系统设置​ -> 高级​ -> 环境变量

1、新建系统变量GOROOT​对应Go安装路径

复制代码
GOROOT

2、新建系统变量GOPATH​对应Go项目路径

复制代码
GOPATH

3、编辑Path​,新建%GOROOT%\bin

python 复制代码
%GOROOT%\bin

4、验证

完成之后,确定保存。快捷键win+r​输入cmd​回车执行命令go env​ 可检查配置信息

bash 复制代码
go env

三、第一个程序---HelloWorld

3.1 新建文件hello.go

编辑文件

go 复制代码
package main
​
import "fmt"
​
func main() {
   fmt.Println("Hello World!")
}
​

3.2 执行hello.go​程序

cmd执行命令go run hello.go​运行程序

go 复制代码
go run hello.go

结束语

通过本文的步骤,你已成功在 Windows 环境中搭建起 Go 开发环境,并完成了第一个程序的编写与运行。Go 语言的魅力远不止于此 ------ 它的并发模型(Goroutine+Channel)能轻松实现高性能网络服务,模块化机制(Go Modules)让依赖管理简单高效,跨平台编译能力更能让你一次编写,处处运行。

如果你想深入学习 Go 语言的进阶知识,比如 Web 开发(Gin/Echo 框架)、微服务架构(gRPC)、区块链开发(Hyperledger Fabric),或是在开发中遇到环境配置、代码调试等问题,欢迎关注我们的公众号「技海拾贝」。

相关推荐
iuyou️15 分钟前
Spring Boot知识点详解
java·spring boot·后端
一弓虽27 分钟前
SpringBoot 学习
java·spring boot·后端·学习
姑苏洛言36 分钟前
扫码小程序实现仓库进销存管理中遇到的问题 setStorageSync 存储大小限制错误解决方案
前端·后端
光而不耀@lgy1 小时前
C++初登门槛
linux·开发语言·网络·c++·后端
方圆想当图灵1 小时前
由 Mybatis 源码畅谈软件设计(七):SQL “染色” 拦截器实战
后端·mybatis·代码规范
毅航2 小时前
MyBatis 事务管理:一文掌握Mybatis事务管理核心逻辑
java·后端·mybatis
我的golang之路果然有问题2 小时前
速成GO访问sql,个人笔记
经验分享·笔记·后端·sql·golang·go·database
柏油2 小时前
MySql InnoDB 事务实现之 undo log 日志
数据库·后端·mysql
写bug写bug4 小时前
Java Streams 中的7个常见错误
java·后端
Luck小吕4 小时前
两天两夜!这个 GB28181 的坑让我差点卸载 VSCode
后端·网络协议