Go 语言基础——package&依赖管理
2019-08-19 10:22
387 查看
依赖语法
/* 格式: import xxx/xxx/package值 注意根目录是src */ //方式一: import testting //方式二: 可以依赖多个包 import ( "testing" ) //方式三: 也可以给package起个别名,直接用别名调用包的函数 import ( t "testing" )
go的package类似于Java中的类名称
以首字母大写来表明可被包外代码访问 (不在同一个src子目录,那么就称它为外包)
代码的package可以和所在的目录不一致
package 值和目录没有必然关系但同一目录里的Go代码的package要保持一致
依赖管理
通过go get来获取远程依赖,go get -u强制从网络更新远程依赖
示例: go get -u github.com/easierway/concurrent_map
如果要把代码放到GitHub上,不要把scr目录放到GitHub上,直接以代码路径开始,不要有src
vendor路径
随着Go 1.5 release版本的发布, vendor目录被添加到除了GOPATH和 GOROOT之外的依赖目录查找的解决方案。在Go1.6之前,你需要手动的设置环境变量
查找依赖包路径的解决方案如下:
1,当前包下的vendor目录
2,向上级目录查找,直到找到src下的vendor目录
3,在GOPATH下面查找依赖包4.在GOROOT目录下查找
go依赖管理的问题
1.同一环境下,不同项目使用同一包的不同版本
2,无法管理对包的特定版本的依赖(不能选择特定的版本)
常用的依赖管理工具
早期的: godep https://github.com/tools/godep
最常用的: glide https://aithub.com/Masterminds/qlide
最新的: dep https://github.com/golang/dep
相关文章推荐
- GO语言依赖管理工具govendor的使用
- GO语言基础之interface
- Go语言面组合式向对象编程基础总结
- go语言基础之布尔类型
- Go依赖管理工具(三)govendor
- 基于硬件的C(C++)语言程序设计教程17:管理自己的代码2——Git基础
- Go语言_基础学习篇
- go语言开发的基础
- 【C语言基础】C语言静态学生成绩管理系统
- GO语言基础-for语句特性,字符串循环的一个小问题
- Go语言_项目管理_带有包结构的Go语言项目创建
- go语言学习基础
- Go语言基础语法学习笔记[2]
- Go 语言本身提供的包管理机制
- Go 语言基础——错误处理
- Go语言基础(一)环境与安装
- 爬虫基础|Go语言中的网络请求库
- Go语言基础学习二-简单的代码分析
- 用java基础语言编写一个班级学生管理系统
- Go语言学习二:Go基础(变量、常量、数值类型、字符串、错误类型)