1

0

如何在Mac环境下配置 Golang 环境

藏色散人

藏色散人

发布时间:2021-11-03 17:17:50

|

5271人浏览过

|

来源于juejin

转载

本文由go语言教程栏目给大家介绍如何在mac环境下配置 golang 环境 ,希望对需要的朋友有所帮助!

配置 Golang 环境(Mac, vscode, 国内)

下载 Golang

因为 Homebrew 的存在,在 Mac 上下载什么都很方便。可以运行以下的命令安装 Homebrew :

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

关于 Homebrew 的更多信息,你可以拜访他们的网站:brew.sh/

立即学习go语言免费学习笔记(深入)”;

安装完成之后就可以使用以下命令来安装 Go 语言:

$ brew install go

安装完成之后,你可以跑以下命令来测试一下:

$ go version

设置 $GOPATH

Go 语言要求你在系统的环境变量中给提供一个$GOPATH变量,顾名思义,就是给 Go 语言提供一个让其操作的文件夹位置。

我们可以通过以下两种方式来设置环境变量

第一种

直接把变量设置在 ~/.bash_profile 文件中,具体的操作如下:

$ sudo nano ~/.bash_profile

运行以上的命令会在终端打开一个 nano 编辑器来编辑 ~/.bash_profile 文件。你可以在 .bash_profile 文件中加入一行:export GOPATH=$HOME/Developer/go

$HOME/Developer/go 是我自己喜欢的 GOPATH 文件夹位置,你可以任意设置一个文件夹位置。 输入完成之后,按 ctrl + o 之后再按 enter进行保存。最后按 ctrl + x 退出 nano 编辑器。

第二种

如果每次通过 sudo nano ~/.bash_profile 来修改环境变量实在太麻烦,而且通过其它编辑器,比如说 vscode 来修改 .bash_profile 每次也需要密码授权,也是很麻烦。那么有没有比较简洁的办法呢?

Shopxp购物系统Html版
Shopxp购物系统Html版

一个经过完善设计的经典网上购物系统,适用于各种服务器环境的高效网上购物系统解决方案,shopxp购物系统Html版是我们首次推出的免费购物系统源码,完整可用。我们的系统是免费的不需要购买,该系统经过全面测试完整可用,如果碰到问题,先检查一下本地的配置或到官方网站提交问题求助。 网站管理地址:http://你的网址/admin/login.asp 用户名:admin 密 码:admin 提示:如果您

下载

我们可以另外创建一个文件来存放环境变量。比如说我们创建一个文件 $HOME/Developer/index.sh,这时我们可以把原来export GOPATH=$HOME/Developer/go 输入到这个文件。 这时,我们通过sudo nano ~/.bash_profile 命令把原来的.bash_profile文件里的export GOPATH=$HOME/Developer/go删除掉,并且添加上这一行source $HOME/Developer/index.sh,然后保存退出。 这样以后,你就可以直接修改 $HOME/Developer/index.sh 来设置环境变量,而不是去修改 ~/.bash_profile 文件了。 这么做的原理在于 source 命令会去引入~/Developer/index.sh 里面的内容。

配置 $PATH

当你配置完了 $GOPATH ,你还要配置一下 $PATH。这是因为,有些时候我们在终端要直接运行 Golang 的一些二进制文件,如果你没有把存放 Golang 二进制的文件夹包括在 $PATH 里面的话,终端是找不到它们的。 存放 Golang 二进制文件的文件夹一般有两个。第一个是 $GOPATH/bin, 第二个是$GOROOT/bin。你可能会疑惑这里的 $GOROOT 是什么。其实就是存放 Golang 源代码的位置,里面存放着一些 Golang 自带的库文件。在 Mac 上我们是不需要设置 $GOROOT 的, 但是在 Windows 上就需要。为了方便理解,我们可以在这里也设置一下。如果你使用 Homebrew 安装 Golang 的话,$GOROOT 会被映射到 /usr/local/opt/go/libexec。那么用我们上面设置 $GOPATH 的第二种方法的话,在 index.sh 文件上添加上这一行就可以设置 GOROOT: export GOROOT=/usr/local/opt/go/libexec。 同时我们也可以在 index.sh 上设置 $PATH。为了简化说明,我直接给你展示完整的 index.sh 是这样的:

export $GOPATH=$HOME/Developer/go
export $GOROOT=/usr/local/opt/go/libexec
export PATH=$PATH:$GOPATH/bin:$GOROOT/bin

配置 Visual Studio Code

我热爱 vscode 的原因第一在于它的轻量,第二在于它的全能性。它真的很轻量,反正我在我的 macbook pro 2013 (8g i7) 上面使用它没有遇到过卡顿,如果使用 goland,便会经常卡顿。当然如果你的电脑配置逆天(比如说 iMac Pro),这点你当然可以忽略不计。全面性在于,它拥有很强大的社区,里面有功能丰富的插件,你可以在上面编程几乎任何语言。话不多说,让我们来看看如何在上面配置 Go 语言环境。

下载官方 Golang 插件

Vscode 上下载插件很方面,在最左侧的竖排导航栏选择 Extensions。 然后在搜索框搜索 go 的第一个插件就是官方(微软)的 Go 语言插件,下载即可。

你有兴趣的话,可以浏览官方 Golang 插件的网址:https://github.com/microsoft/vscode-go

安装 Golang 官方插件依赖包

当你下载这个插件之后,每当你打开一个golang的文件(.go)的时候,它就会提醒安装一些依赖包(其实这些依赖包就是用 Golang 写的一些包)。 你可以点击提醒框右侧的 install all 选项来安装所有安装包。 但是当运行一段时间之后,你会发现好多包都安装失败了:

Installing github.com/mdempsky/gocode FAILED
Installing github.com/ramya-rao-a/go-outline FAILED
Installing github.com/acroca/go-symbols FAILED
Installing golang.org/x/tools/cmd/guru FAILED
Installing golang.org/x/tools/cmd/gorename FAILED
Installing github.com/stamblerre/gocode FAILED
Installing github.com/ianthehat/godef FAILED
Installing github.com/sqs/goreturns FAILED
Installing golang.org/x/lint/golint FAILED
9 tools failed to install.

原因是因为一些众所周知的原因,在国内无法访问 golang.org,自然也就无法下载在其下的资源。这时我们可以设置 $GOPROXY来解决这个问题。设置$GOPROXY 其实就是设置一个代理帮你去访问和安装这些包,而不是通过你自己的网络。我个人使用的代理是这个:export GOPROXY="https://athens.azurefd.net"。同样的,你可以把这行代码写进index.sh 文件,那么更新后的index.sh 文件就是这样的:

export $GOPATH=$HOME/Developer/go
export $GOROOT=/usr/local/opt/go/libexec
export PATH=$PATH:$GOPATH/bin:$GOROOT/bin
export GOPROXY="https://athens.azurefd.net"

以下是现有的其它可用的代理:

export GOPROXY="https://goproxy.io"
export GOPROXY="https://goproxyus.herokuapp.com"
export GOPROXY="https://goproxy.cn"
# 最新官方的
export GOPROXY="https://proxy.golang.org"

这时,你可以通过再打开一个 Golang 文件弹出提醒框的方式来安装这些包。或者直接通过在 vscode 上按 cmd+shift+p 弹出 vscode 的命令框,然后输入 >Go: Install/Update Tools 来安装这些依赖包了。

其实 vscode 是通过 go get 命令来安装这些安装包的,go get 命令会把源代码安装到 $GOPATH/src, 同时把相应包的二进制文件安装到 $GOPATH/bin。 当你安装完成之后,你去到 $GOPATH/bin 会发现多了很多二进制文件。而官方 Golang 插件就是通过自动找到并使用这些二进制文件来帮你优化编程体验的。比如 gocode 是帮忙自动补全代码的。

自此,我们关于 Golang 的环境配置(在 Mac、vscode以及国内)就完成了。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
golang如何定义变量
golang如何定义变量

golang定义变量的方法:1、声明变量并赋予初始值“var age int =值”;2、声明变量但不赋初始值“var age int”;3、使用短变量声明“age :=值”等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

182

2024.02.23

golang有哪些数据转换方法
golang有哪些数据转换方法

golang数据转换方法:1、类型转换操作符;2、类型断言;3、字符串和数字之间的转换;4、JSON序列化和反序列化;5、使用标准库进行数据转换;6、使用第三方库进行数据转换;7、自定义数据转换函数。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

229

2024.02.23

golang常用库有哪些
golang常用库有哪些

golang常用库有:1、标准库;2、字符串处理库;3、网络库;4、加密库;5、压缩库;6、xml和json解析库;7、日期和时间库;8、数据库操作库;9、文件操作库;10、图像处理库。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

343

2024.02.23

golang和python的区别是什么
golang和python的区别是什么

golang和python的区别是:1、golang是一种编译型语言,而python是一种解释型语言;2、golang天生支持并发编程,而python对并发与并行的支持相对较弱等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

209

2024.03.05

golang是免费的吗
golang是免费的吗

golang是免费的。golang是google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的开源编程语言,采用bsd开源协议。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

394

2024.05.21

golang结构体相关大全
golang结构体相关大全

本专题整合了golang结构体相关大全,想了解更多内容,请阅读专题下面的文章。

220

2025.06.09

golang相关判断方法
golang相关判断方法

本专题整合了golang相关判断方法,想了解更详细的相关内容,请阅读下面的文章。

193

2025.06.10

golang数组使用方法
golang数组使用方法

本专题整合了golang数组用法,想了解更多的相关内容,请阅读专题下面的文章。

397

2025.06.17

俄罗斯Yandex引擎入口
俄罗斯Yandex引擎入口

2026年俄罗斯Yandex搜索引擎最新入口汇总,涵盖免登录、多语言支持、无广告视频播放及本地化服务等核心功能。阅读专题下面的文章了解更多详细内容。

142

2026.01.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 8万人学习

好课诞生记
好课诞生记

共20课时 | 6.1万人学习

swift开发文档
swift开发文档

共33课时 | 21.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号