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

Go语言开发环境搭建

一、Windows下安装

安装Go开发包

  1. 官网下载Go语言开发包,安装方法就是next,除了安装位置选择

  2. 安装目录选定一个好记的。尽量不要放在C盘中,除非你盘空间很大,完全够用。此路径需要自己记住,需要时可以很容易的找到。

  3. 安装完成后输入go version查看go版本号

  4. 也可以使用go来测试,只要显示一大堆东西就是安装成功,这是野路子方法,不推荐使用。

GOPATH

  1. 在自己电脑上新建一个目录,例如E:\Go(存放我编写的Go语言代码)
  2. 在环境变量里,新建一项:GOPATH:D:\Go
  3. D:\Go下新建三个文件夹,分别是:binpkgsrc
  4. D:\GO\bin这个目录添加到PATH这个环境变量的后面
    • Win7是英文的;分隔
    • Win10是单独一行
  5. 我们的电脑上在安装完go包之后是默认生成了默认的环境变量的,也就是说GOPATH是有默认值的,通常是%USERPROFILE%/go,把这一项删掉,自己按照环境变量的添加方式重新添加一个自己配制的环境变量就可以了

二、Linux下安装

​ 如果不是要在Linux平台敲go代码就不需要在Linux平台安装Go,我们开发机上写好的go代码只需要跨平台编译好之后就可以拷贝到Linux服务器上运行了,这也是go程序跨平台易部署的优势。

我们在版本选择页面选择并下载好go1.14.1.linux-amd64.tar.gz文件:

wgethttps://dl.google.com/go/go1.14.1.linux-amd64.tar.gz

将下载好的文件解压到/usr/local目录下:

tar-zxvfgo1.14.1.linux-amd64.tar.gz-C/usr/local# 解压

如果提示没有权限,加上sudo以root用户的身份再运行。执行完就可以在/usr/local/下看到go目录了。

配置环境变量: Linux下有两个文件可以配置环境变量,其中/etc/profile是对所有用户生效的;$HOME/.profile是对当前用户生效的,根据自己的情况自行选择一个文件打开,添加如下两行代码,保存退出。

exportGOROOT=/usr/local/goexportPATH=$PATH:$GOROOT/bin

修改/etc/profile后要重启生效,修改$HOME/.profile后使用source命令加载$HOME/.profile文件即可生效。 检查:

~ go version go version go1.14.1 linux/amd64

三、Mac下安装

  1. 下载可执行文件版,直接点击下一步安装即可,默认会将go安装到/usr/local/go目录下。

  2. 安装过程执行完毕后,可以打开终端窗口,输入go version命令,查看安装的Go版本。

四、GOROOT和GOPATH

GOROOTGOPATH都是环境变量,其中GOROOT是我们安装go开发包的路径,而从Go 1.8版本开始,Go开发包在安装完成后会为GOPATH设置一个默认目录,参见下表。

GOPATH在不同操作系统平台上的默认值

平台GOPATH默认值举例
Windows%USERPROFILE%/goC:\Users\用户名\go
Unix$HOME/go/home/用户名/go

我们只需要记住默认的GOPATH路径在哪里就可以了,并且默认情况下GOROOT下的bin目录及GOPATH下的bin目录都已经添加到环境变量中了,我们也不需要额外配置了。

GOPROXY

Go1.14版本之后,都推荐使用go mod模式来管理依赖环境了,也不再强制我们把代码必须写在GOPATH下面的src目录了,你可以在你电脑的任意位置编写go代码。(网上有些教程适用于1.11版本之前。)

默认GoPROXY配置是:GOPROXY=https://proxy.golang.org,direct,由于国内访问不到https://proxy.golang.org,所以我们需要换一个PROXY,这里推荐使用https://goproxy.iohttps://goproxy.cn

可以执行下面的命令修改GOPROXY:

goenv-wGOPROXY=https://goproxy.cn,direct

注:执行完此命令需要关闭编译器(一般指VSCode)后才会生效

五、Go开发的编译器

​ Go采用的是UTF-8编码的文本文件存放源代码,理论上使用任何一款文本编辑器都可以做Go语言开发,这里推荐使用VS CodeGolandVS Code是微软开源的编辑器,而Goland是jetbrains出品的付费IDE。

​ 但是在大公司中,尤其是连接外网公司尽可能的不要使用破解版的IDE,容易出现不必要的版权问题

​ 推荐使用VSCode,或者Vim编译器,但是由于vim上手慢所以使用VSCode是首选,当然还有其他很多种编译器可以选择,这里不做过多的解释,详情请找度娘

VSCode介绍

VSCode全称Visual Studio Code,是微软公司开源的一款免费现代化轻量级代码编辑器,支持几乎所有主流的开发语言的语法高亮、智能代码补全、自定义热键、括号匹配、代码片段、代码对比 Diff、GIT 等特性,支持插件扩展,支持 Win、Mac 以及 Linux平台。

虽然不如某些IDE功能强大,但是它添加Go扩展插件后已经足够胜任我们日常的Go开发。

下载安装VSCode

VSCode官方下载地址:https://code.visualstudio.com/Download

三大主流平台都支持,请根据自己的电脑平台选择对应的安装包。

配置

  1. 安装中文简体插件

    点击左侧菜单栏最后一项管理扩展,在搜索框中输入chinese,选中结果列表第一项,点击install安装。

    安装完毕后右下角会提示重启VS Code,重启之后你的VS Code就显示中文啦!

  2. 基本快捷键

    • Ctrl + Shift + E 文件资源管理器
    • Ctrl + Shift + F 跨文件搜索
    • Ctrl + Shift + G 源代码管理
    • Ctrl + Shift + D 启动和的调试
    • Ctrl + Shift + X 管理扩展
    • Ctrl + Shift + M 查看错误可警告
    • Ctrl + Shift + P 执行命令的输入框
    • Ctrl + ` 切换集成终端
  3. 变更编辑器主题:依次点击设置->颜色主题

  4. 安装Go扩展工具

    ​ 现在我们要为我们的VS Code编辑器安装Go扩展插件,让它支持Go语言开发,直接在管理扩展中搜索下载第一个。

Go语言开发工具包

​ Go语言开发的时候为我们提供了诸如代码提示、代码补全等功能,但是执行下载时由于是国外的网站链接,下载会失败,所以需要我们配置国内的镜像源,这个配置可以在编译器中的控制台执行,也可以直接在cmd中执行

设置GOPROXY,打开终端执行以下命令:

goenv-wGOPROXY=https://goproxy.cn,direct

Windows平台按下Ctrl+Shift+P,Mac平台按Command+Shift+P,这个时候VS Code界面会弹出

​ 我们在这个输入框中输入>go:install,下面会自动搜索相关命令,我们选择Go:Install/Update Tools这个命令,按下图选中并会回车执行该命令(或者使用鼠标点击该命令),然后等待所有工具安装完成

配置代码片段快捷键

  1. Ctrl/Command+Shift+P,按下图输入>snippets,选择命令并执行

  2. 然后在弹出的窗口点击选择go选项:

  3. 然后可以进行修改

    "这里放个名字":{"prefix":"这个是快捷键","body":"这里是按快捷键插入的代码片段","description":"这里放提示信息的描述"}# 例子:{// Place your snippetsforgo here. Each snippet is defined under a snippet name and has a prefix, body and // description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are: //$1,$2fortab stops,$0forthe final cursor position, and${1:label},${2:another}forplaceholders. Placeholders with the // same ids are connected. // Example: //"Print to console":{//"prefix":"log", //"body":[//"console.log('$1');", //"$2"//], //"description":"Log output to console"//}"println":{"prefix":"pln","body":"fmt.Println(\"$0\")","description":"println"},"printf":{"prefix":"plf","body":"fmt.Printf(\"$0\")","description":"printf"},"print":{"prefix":"plt","body":"fmt.Print(\"$0\")","description":"print"}}

    ​ 其中$0表示最终光标停留的位置。 举个例子,我这里创建了两个快捷方式,一个是输入pln就会在编辑器中插入fmt.Println()代码;输入plf,就会插入fmt.Printf("")代码。

    ​ 然后可以打开文件测试一下,敲击plt或pln选中后按回车

六、Go语言结构

1.go语言的基本目录结构

一般的,一个Go项目在GOPATH下,会有如下三个目录:

bin:bin存放编译后的可执行文件

pkg:pkg存放编译后的包文件

src:src存放项目源文件

2.go语言文件的基本结构

import"fmt"// 函数外只能防止标识符(变量\常量\函数\类型)的声明// fmt.Println("Hello") // 非法// 程序的入口函数funcmain(){fmt.Println("Hello world!")}

七、编译

使用go build

  1. 在项目目录下执行go build
  2. 在其他路径下执行go build, 需要在后面加上项目的路径(项目路径从GOPATH/src后开始写起,编译之后的可执行文件就保存在当前目录下)
  3. 自定义可执行文件的名字go build -o hello.exe

go run

像执行脚本文件一样执行Go代码

go install

go install分为两步:

1. 先编译得到一个可执行文件2. 将可执行文件拷贝到`GOPATH/bin`

交叉编译

Go支持跨平台编译

例如:在windows平台编译一个能在linux平台执行的可执行文件

SETCGO_ENABLED=0// 禁用CGO SETGOOS=linux // 目标平台是linux SETGOARCH=amd64 // 目标处理器架构是amd64

执行go build

Mac平台交叉编译:

CGO_ENABLED=0GOOS=linuxGOARCH=amd64 go buildCGO_ENABLED=0GOOS=windowsGOARCH=amd64 go build

http://www.jsqmd.com/news/1160883/

相关文章:

  • 【绝密】LangChain Memory 底层Hook机制逆向解析:如何绕过默认序列化劫持会话状态——仅限前500名开发者获取调试工具链
  • Cadence Allegro 17.4 DRC 检查:从68个报错到0错误的5步精准定位流程
  • 欧米茄表针怎么按进去的维修保养指南权威公示(2026年7月最新) - 欧米茄官方服务中心
  • PLIP终极指南:快速掌握蛋白质配体相互作用分析的完整教程
  • Streamlit 1.59.0 安装与虚拟环境配置:3种主流包管理器实战对比
  • LangChain 生态工具链对比:LangSmith vs LangGraph vs LangServe 的3种核心应用场景
  • 工业级负载控制方案:TPD2017FN与PIC32MZ的硬件设计与软件实现
  • 百度AI语音合成 Python SDK 实战:5个参数调出3种情感语音(附代码)
  • 2026选购推荐:建筑膜品牌/防晒膜推荐厂家/防爆膜厂家推荐 - 栗子测评
  • Speechless:如何用这款免费Chrome插件永久保存你的微博记忆?
  • 2026亲测可用:抖音音频提取的3种免费方法 - 软件工具教程方法
  • 如何高效处理大型JSON文件:HugeJsonViewer专业解析工具的完整指南
  • NBM5100A电池增强器:提升纽扣电池性能与寿命
  • 为什么你的Cursor AI生成的React组件无法通过Code Review?资深架构师曝光4个致命合规漏洞(仅限本周开放下载)
  • 立即自查!你还在用ChatGPT免费版处理敏感文档?Plus版端到端加密+企业审计日志功能已悄然上线
  • QueryExcel终极指南:3分钟掌握Excel批量搜索神器,100文件秒级查询
  • 解锁B站高阶体验:3个核心场景下的Bilibili-Evolved实战指南
  • 2026佛山顺德区吊车租赁正规服务商测评榜单|24小时抢修8–500吨汽车吊随车吊工程吊装5强盘点 - 星际AI
  • 《2026 苏州防水补漏服务行业发展趋势白皮书正式发布》 - 徽顺虹
  • D2DX:终极暗黑破坏神2现代化补丁,让经典游戏重获新生
  • Kimi的“中文思维链”到底强在哪?——对比ChatGPT在古文释义、方言理解、政策文件解读中错误率下降68%的技术溯源(独家架构图解)
  • 2026年最新方法:电脑提取视频文案全程无付费 - 软件工具教程方法
  • 眼袋太重用什么眼油?35+顽固脂肪袋,这款眼油紧致弱化眼袋 - 全网最美
  • 怎样自研一个Agent回放系统?
  • DeepSeek V4 + Hermes 桌面版实测接入:Nginx反向代理绕过API白名单
  • 2026年AI家装设计工具全景深度对比:从“画图”到“造家”的产业升级
  • 工业负载控制方案:TPD2015FN与PIC18F47Q10实战解析
  • 找塑胶智能工厂方案的源头厂家推荐|正规服务商怎么选 - myqiye
  • 2026年东莞高价回收劳力士手表,(185-3117-2838)南城鸿福路200号赵掌柜二奢专业回收鉴定劳力士宝玑手表、欧米茄手表、卡地亚手表 - GrowthUME
  • 开源AIOps平台Keep终极指南:5分钟解决告警风暴难题