goroot和gopath环境变量,gopath是干啥的?不配置gopath可以吗?可以的!~

在这里插入图片描述
在这里插入图片描述

配置gopath主要是方便管理exe、依赖库,src源码,不配置默认也可以。

GO环境中GOPATH是干啥的?

GOPATH 是 Go 语言的工作区,用于存储 Go 的源代码、依赖包和编译后的可执行文件。它包含三个主要目录:srcpkgbin,每个目录在 Go 的开发过程中都有特定的作用。

1. src 目录

  • 作用: src 目录用于存储 Go 项目的源代码。

  • 详细说明

    :

    • 所有的 Go 源文件(包括你编写的项目和第三方库)都会存放在 src 目录下。
    • 项目的源代码通常组织为类似于 src/github.com/username/project 这样的结构。
    • 你编写的所有 Go 文件都会放在这个目录中进行开发和管理。
使用示例
$GOPATH/src/github.com/yourname/yourproject/main.go

当你使用 go get 下载一个包时,包的源代码会放在 src 目录下:

$GOPATH/src/github.com/gin-gonic/gin

2. pkg 目录

  • 作用: pkg 目录用于存储 Go 包的 编译结果,特别是下载的依赖包的编译缓存文件。

  • 详细说明

    :

    • 当你运行 go buildgo install 时,Go 会将编译后的 .a 文件(编译的二进制文件)存储在 pkg 目录中,以便复用和加快后续的编译。
    • 它根据不同的操作系统、架构和包的路径组织这些编译文件。例如,$GOPATH/pkg/darwin_amd64/github.com/gin-gonic/gin.a 表示在 macOS 系统上的编译产物。
使用场景

当你运行以下命令时:

go get github.com/gin-gonic/gin

Go 会在 $GOPATH/src 中下载源代码,并在 $GOPATH/pkg 中存储编译后的 .a 文件以供后续复用。

3. bin 目录

  • 作用: bin 目录用于存储通过 go install 命令生成的 可执行文件

  • 详细说明

    :

    • 当你运行 go install,Go 会将编译后的可执行文件存放到 bin 目录中,方便你在命令行中直接运行这些二进制文件。
    • 对于第三方命令行工具,Go 也会把它们的可执行文件放入 bin 目录。例如,安装一个 Go 工具后,你可以在终端中直接运行该工具,而无需指定完整路径。
使用示例
$GOPATH/bin/myapp

如果你将 $GOPATH/bin 添加到系统的 PATH 环境变量中,你就可以直接在命令行中使用这些工具:

export PATH=$PATH:$GOPATH/bin

总结

  • src: 存放源代码,包含你编写的项目和下载的依赖包的源文件。
  • pkg: 存放依赖包的编译缓存(.a 文件),加快编译速度。
  • bin: 存放编译后的可执行文件(通过 go install 生成)。

在模块化(Go Modules)的模式下,GOPATH 的重要性有所减弱,但仍然可以用来存放 Go 代码库和工具。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值