教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 Golang自定义包并导入包

Golang自定义包并导入包

发布时间:2022-03-12   编辑:jiaochengji.com
教程集为您提供Golang自定义包并导入包等资源,欢迎您收藏本站,我们将为您提供最新的Golang自定义包并导入包资源
<blockquote>

<span style="color:#86ca5e;">0x00 Go语言自定义包,方式一:按相对路径引入包(将GO111MODULE设置为off或者auto)</span>

</blockquote> <ul><li> Go语言在创建包时,都要先新建目录(文件夹),并且建立包的go文件放到此目录下,建立的.go文件命名包的名字时必须和该.go文件所在的当前目录名保持一致。</li><li>我们可以到golang编译器安装目录下的src目录查看fmt包的内容,首先是一个fmt目录(文件夹),这个目录下的所有.go文件定义的包名都是fmt。</li></ul>

<ul><li>要想建立的包能够被调用,所自定义的包里面的函数首字母必须大写。</li><li>在调用自定义的包时,首先得引入包(方式一:按照包的相对路径引入),import ("./包名"),并且在调用函数时,必须是:包名.函数名()。</li></ul>

 

<ul><li> 当以绝对路径导入包时,会发生错误(编译器提示:无效的路径)。</li></ul>

<ul><li> 当以绝对路径导入自定义包时,Go语言会认为这是个特殊的路径,专门用来存放编码者所写的自定义包,所以此时编码者应当将自定义包放到GOPATH目录下的src目录下,这样的一个工作目录即方便编码者调用此包,也方便了编码者后续管理和升级自己的包。</li></ul><blockquote>

<span style="color:#86ca5e;"> 0x01 方式二:在GOPATH的src目录下导入自定义包(将GO111MODULE设置为off或者auto)</span>

</blockquote>

 

<ul><li> 从编译器的提示可以发现,当要以某个路径(非相对路径)引用包时,这个包所在的位置必须在<span style="color:#f33b45;">GOPATH的src</span>目录(即GOPATH目录下的src目录)下或者<span style="color:#f33b45;">Golang编译器的安装目录下的src</span>目录(即GOROOT目录下的src目录)中,强烈建议不要放到GOROOT目录下的src目录,因为这是Go语言标准库所放置的路径,学习完这篇博文,你就能体会到go语言设计GOPATH以及GOMODULE包管理方式的好处,让编码者更好的管理自己的代码。</li></ul>

<ul><li> 以上内容笔者均在golang编译器1.15中验证通过。</li></ul><blockquote>

<span style="color:#86ca5e;">0x02 golang引用开源库(将GO111MODULE设置为on)</span>

</blockquote> <ul><li> 利用GO111MODULE和GOPROXY,可以直接将Github上的第三方库直接下载到本地使用,不需要使用<span style="color:#e579b6;">go get命令</span>。</li></ul>

<ul><li> Go Modules包管理工具在国内环境下配置好go代理,使用七牛云的代理,可以快速的下载包,使用go mod命令下载的包在我们配置好的GOPATH目录下的pkg目录下,准确来说是pkg目录下的mod目录,表示多个模块,模块就是多个包的集合,Go语言这样设计就是让编码者非常舒服的管理包,这也是Go Modules管理包方式的优点,非常有条理性。</li></ul>

<ul><li> 现在解读下GOPATH目录下的三个目录<span style="color:#f33b45;">bin,pkg,src</span>,bin目录用来放置可执行文件的(前提是未设置GOBIN,否则就在设置好的GOBIN目录下),当我们使用go install命令时,生成的可执行文件就在这里,其次我们在下载某些开源库的命令行工具也在这里,比如我们下载beego框架的bee命令就在此,如果我们将GOPATH目录下的bin配置到计算机的环境变量中,那么我们直接在命令行或者终端中使用这些命令;pkg目录下的mod目录用来存放第三方的开源库;src目录就是用来存放我们自定义包,当然我们自定义的包也可以放到其他目录下,只是放到src目录时,方便调用和管理。</li></ul>

 

到此这篇关于“Golang自定义包并导入包”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
golang 之 import 和 package 的使用
Golang自定义包并导入包
Golang笔记:包管理机制
Golang(Go语言)包机制的理解
拓展学习-golang的基础语法和常用开发工具
理解Golang包的import导入机制
Golang面试题总结
golang日志服务器_深扒GO日志 | (一)从Go语言的日志包说起
golang判断变量的类型
golang 利用github自定义module 踩坑系列 类似于「springboot starter 一毛一样」

[关闭]
~ ~