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

【GO环境安装】mac系统+GoLand使用

文章目录

  • 下载安装包
  • 环境配置
  • GoLand
  • Go Modules


下载安装包

地址:GO下载地址
在这里插入图片描述
下载好后直接进行安装:
在这里插入图片描述
进入terminal,查看是否安装成功:
在这里插入图片描述


环境配置

  1. 在文稿下面创建工作目录:
    在文稿下新建Go_Works文件夹,在该文件夹下新建my_Golang目录。
    在这里插入图片描述

  2. 配置环境变量

进入Go_works目录,然后vim变量:
在这里插入图片描述
vim后,输入i进入input模式,然后粘贴下面(需要进行修改),修改好后按esc退出,然后按shift+:wq进行保存:

#注意=号前后不能有空格
export GOPATH=/Users/hezhe/Documents/Go_Works/my_Golang #请改成你的项目路径
export GOBIN=$GOPATH/bin  #GOLANG运行目录一般不可修改
export PATH=$PATH:$GOBIN

在这里插入图片描述

最后不要粘贴vim ~/.bash_profile,可以回遇到下面错误:
在这里插入图片描述
然后输入 source ~/.bash_profile 完成对 Goland 环境变量的配置并生效:
在这里插入图片描述
最后检查是否配置成功:
输入 go env 查看配置结果,有下面配置说明完成了
在这里插入图片描述
注意:
执行 source ~/.bash_profile 后,GOPATH 是正确的,但重新打开终端后又恢复为默认值。这说明你的配置文件 ~/.bash_profile 并没有在新终端会话中自动加载。

macOS 默认使用 zsh:从 macOS Catalina(10.15)开始,默认的 shell 已切换为 zsh,而不是 bash。因此,如果你修改的是 ~/.bash_profile,它不会被 zsh 自动加载。
未正确加载配置文件:在 zsh 中,默认加载的是 ~/.zshrc,而不是 ~/.bash_profile。

参考下面解决办法:

nano ~/.zshrc

写入和.bash_profile相同的文件,然后保存并退出(按 Ctrl+O 保存,按 Ctrl+X 退出)

最后使这个文件生效即可。

source ~/.zshrc

GoLand

安装好后打开Go_Works目录:
在这里插入图片描述
快捷键command+,配置goroot和gopath:
在这里插入图片描述
在这里插入图片描述
然后新建一个go项目:
在这里插入图片描述
然后新建一个main.go文件并运行:

package main

import "fmt"

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

运行成功:
在这里插入图片描述


Go Modules

现在都是用 Go Modules(通过 go.mod 文件管理项目和依赖),GoLand创建项目时会自行创建一个go.mod的文件。【没有生成,可通过命令:go mod init my_project_name

mod管理摆脱了Go 语言早期(在 Go 1.11 引入模块之前)使用的一种工作区管理方式:
GOPATH 是 Go 的工作区,所有代码默认需要放在 GOPATH 目录下(这是早期的做法)。这个工作区按照以下结构组织代码:

  • src/:存放源代码(你的项目和第三方包的代码)。
  • bin/:存放编译后的可执行文件。
  • pkg/:存放编译好的中间文件(比如 .a 文件),这些文件可以加速编译。

Go 引入了 模块(Modules) 系统,用于更现代化的依赖管理,摆脱了对 GOPATH 的严格依赖。

  • 不再强制使用 GOPATH: 你可以在任意目录下创建 Go 项目,而不需要将项目放在 GOPATH/src 下。
  • 使用 go.mod 文件管理依赖:go.mod 文件记录了项目的模块名和依赖项的版本。Go 可以通过 go mod 自动拉取和管理依赖项,而不需要手动放入 GOPATH/src
  • 独立性: 每个项目都有自己的依赖,不会和其他项目冲突。通过 go.mod,可以明确指定项目的依赖版本。

虽然模块系统可以摆脱对 GOPATH 的依赖,但 GOPATH 仍然有用。主要体现在以下几个方面:

  1. 缓存依赖包: 当你使用 go get 拉取依赖包时,Go 会将这些依赖缓存到 GOPATH/pkg/mod 中。这个缓存用于加快依赖解析和构建速度。

  2. 默认模块存储位置: 如果你在 GOPATH/src 下创建项目,并启用了模块系统(即有 go.mod 文件),它依然可以正常工作,但推荐你将项目放到 GOPATH 之外的目录,以避免冲突。

  3. 工具链依赖: 一些早期工具(或未支持模块的工具)仍然需要 GOPATH



http://www.kler.cn/a/444120.html

相关文章:

  • Vulnhub靶场Nginx解析漏洞复现
  • 如何缩放组件
  • 初识面向对象晨考day09
  • 拼多多电子面单接入:常见问题及专业解决方案
  • 有关异步场景的 10 大 Spring Boot 面试问题
  • 时间序列异常值检测方法
  • nginx 记录完整的 request 及 response
  • 使用JustAuth实现gittee登录
  • 中型项目下的 MySQL 挑战与应对
  • 利用Python爬虫实现数据收集与挖掘
  • 音视频入门基础:MPEG2-TS专题(18)——PES流简介
  • HTML基本标签详解
  • MySQL Explain 分析SQL语句性能
  • PostgreSQL: 事务年龄
  • python学opencv|读取图像(十四)BGR图像和HSV图像通道拆分
  • 医院与医疗设备供应商网络安全事故综述
  • ElasticSearch学习7
  • 粘包由应用层协议解决
  • django模型——ORM模型2
  • 校园点餐订餐外卖跑腿Java源码
  • 基于单片机的电能数据采集系统(论文+图纸)
  • 文件包含 0 1学习
  • 【Prompt Engineering】1.编写 Prompt 的原则
  • [Unity Shader]【游戏开发】【图形渲染】Unity Shader的结构3-深入理解 Fallback 指令及其应用
  • 信息安全管理与评估赛题第1套
  • JSX和vue模版哪个更好?