golang【GO语言基础】go项目工程解析

本文详细介绍了Go语言的环境配置,包括GOROOT和GOPATH的区别。GOROOT是Go的安装路径,用于指定Go版本,而GOPATH是工程路径,用于存放自定义包。可以设置多个GOPATH以方便管理不同项目依赖。确保将它们添加到PATH环境变量中,以便正确查找和执行包。

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

编程环境Linux,开发工具VScode

go基础,在golang中:问题分析:

1.go环境解析:

在我们安装go的时候,会下载安装包,然后启用安装,在安装的过程中,需要指定安装路径

/usr/local/go

这个是我的安装路径。安装后go下面有这么多东西,这个就是我们的GOROOT路径。

然后我们发现,我们还需要一个GOPATH路径,GOPATH路径下有三个文件夹。

2.GOROOT和GOPATH?

这个时候新手可能会纳闷?什么是GOROOT?什么又是GOPATH?

GOROOT是我们指定的go安装路径。

        什么是安装路径?如果我们现在在/usr/local/go下安装了go:1.6.5版本,GOROOT=/usr/local/go,那么我们现在执行go时,就是用go:1.6.5版本去执行的。所以我们可以在当前环境里创建很多个文件,/usr/local/go1,~/go2,~/loacl/go3,在go1里安装1.5,go2里安装1.6,go3里安装1.7,我们将GOROOT=go1,这样我们环境就使用的是1.5版本的go,我们将GOROOT=go2,这样我们环境就使用的是1.6版本的go,这样环境就可以兼容很多版本的go了,这个就是GOROOT

GOPATH是我们指定的工程路径。

        什么是工程路径?我们现在创建工程时,需要调用很多包,那么这些包我们是如何找到的,这是个问题。

        找包流程:GOROOT>GOPATH。在我们设置的目录下,都存在一个src文件,这些包都在src文件里。

        可以看到,GOROOT=/usr/loacl/go,这个是我 /usr/loacl/go/src下面的包,其中有我们非常熟悉的老伙伴包,fmt和log,这些包我们都是在GOROOT路径在调用的。

        我设置的GOPATH路径为~/golang/gopath

         这是我GOPATH下面src里的包,这里面的包就属于是我自己创建的包了。

        我现在创建了一个新的包,add,我要调用我add里自己创建的方法,这个是属于自创的,也是官方里没有的,现在我只要设置了GOPATH=~/golang/gopath,那么当在找包的时候,就可以找到我的这个包了。

        3.多个GOPATH

        了解了上文的GOPATHGOROOT,那我们现在也基本了解了go的工作机制了,很显然我们开发过程中不会设置多个GOROOT(go的版本),那么我们可以设置多个GOPATH吗?很显然是可以的,GOPATH里的包都是我们自己设置的,没有特殊性,我们设置两个路径,~/gopath1,~/gopath2,gopath1里有一个add的包,gopath2里有一个add2的包,我们只要设置

GOPATH=~/gopath1:~/gopath2

这样在找包的时候,会先去gopath1里寻找,找不到就会去gopath2里寻找,这样我们就可以配置多个GOPATH了。 

        4.PATH

        你以为将GOROOT和GOPATH设置好就可以找包了吗?

        前提是我们要将GOROOT和GOPATH加入PATH才行,这个才是做一切的前提,但是你既然安装好了golang,那么安装其他教程,肯定也是配置了。

        但是再次提醒一次

#在etc下配置环境非永久环境,在此环境下才是永久环境配置
vi ~/.bashrc 

#添加如下环境
GOROOT=xxx
GOPATH=xxx
PATH=$PATH:GOROOT:GOPATH

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值