Go基础之面向对象(GOPATH篇)

本文介绍了Go语言的环境变量GOPATH及其作用,包括如何查看和设置GOPATH,以及GOPATH在编译过程中的查找规则。同时,提到了GOROOT用于存放系统库,而GOPATH用于第三方库和项目。当遇到下载第三方包的问题时,推荐使用gopm作为go get的替代工具,并详细说明了gopm的安装和使用步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • GOPATH是一个环境变量,它可以指向多个不同的路径,多个路径之间用":"分割    在终端中查看变量:echo  $GOPATH
  • GOPATH默认指向:"~/go"(unix, linux),   "%USERPROFILE%\GO"(windows)
  • 官方推荐:所有项目和第三放库都放在同一个GOPATH下,但也可以将每个项目放在不同的GOPATH
  • go程序在编译时会到各个不同的GOPATH下找到自己依赖的包

export PATH="$GOPATH/bin:$PATH:/usr/local/go/bin" 
export GOROOT=/usr/local/go 
export GOPATH=$HOME/go 

  • 实际上,go程序在编译时,会依次从"GOROOT", "GOPATH",和当前项目下的"src"目录下寻找所依赖的包,若找不到,编译会报错

"GOROOT"环境变量:存放go语言系统库文件的目录,如"fmt","io"等,就是go的SDK

"GOPATH"环境变量:存放第三方库和自己项目的目录,可以指定多个不同目录

"PATH"环境变量: 系统可执行文件存放的目录,即执行可执行文件时会从PATH中的目录进行搜索

  • go第三方库的获取
  1. 终端执行 go get xxx 命令,有时会被墙
  2. 使用gopm 来获取 go get 无法下载的一些第三方包,gopm是一个包管理工具,类似与node.js的npm

gopm安装:

go get -v github.com/gpmgo/gopm

gopm的使用: 

1.gopm get -v -g golang.org/x/tools/cmd/goimports     

   -v :获取过程中显示详细信息 -g :下载到GOPATH中

   上一步只是获取到了包,并没有build

2.go install golang.org/x/tools/cmd/goimports   

   go install 会做两件事:

     1> 将包"golang.org/x/tools/cmd/goimports"进行build,产生pkg 和 bin 文件

                  2>将build后的可执行文件放到GOPATH/bin中

     另外,go run: 直接编译运行,这里没用到

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值