首页 > 其他 > 详细

Go依赖包的管理

时间:2020-03-13 11:47:09      阅读:69      评论:0      收藏:0      [点我收藏+]

package介绍

   1.基本复用模块单元
      以首字母大写来表明可以被包外代码访问 小写字母开头的将不能被包外访问
   2.代码的package可以和所在的目录不一致
   3.同一个目录中的Go的代码的package要保持一致

   init方法
     1.在main被执行前,所有依赖的package的init方法都会被执行
     2.不同包的init函数按照包导入的依赖关系决定执行顺序
     3.每个包可以有多个init函数
     4.包的每个源文件也可以有多个init函数,这点比较特殊

   远程package

      go get -u -u 表示每次都从远程服务器拉取最新版本的包而不使用本地缓存的包

  vendor路径
      vendor目录被添加到除了GOPATH和GOROOT之外的依赖目录查找。解决了不同项目各自依赖不同版本的问题

package查找流程

     1.当前包下的vendor目录
     2.逐级向上级目录查找vendor目录,直到src目录下的vendor目录
     3.在GOPATH目录下查找依赖包
     4.在GOROOT目录下查找依赖包

技术分享图片

 

 技术分享图片

包导入语法  

   import 导入的是包目录(path),不是包
   包是 package packname
   src下面的所有目录都称为包目录
   所有导入的包路径在后面必须被引用

匿名包
     没有名字的包
    import _ "fmt" 调用包里面的初始化函数
    在go源码文件中定义init()函数 当此go文件被导入的时候会自动执行init函数。一个函数返回多个值 如果调用函数的时候不需要某个返回值 就可以用_来取代接收变量
别名包用途

   1.包名太长
   2.包名冲突

   技术分享图片

 

 技术分享图片

Go依赖包的管理

原文:https://www.cnblogs.com/yxh168/p/12420644.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!