美文网首页
Go 语言基础——package&依赖管理

Go 语言基础——package&依赖管理

作者: 刘彦青 | 来源:发表于2019-08-19 10:24 被阅读0次

    依赖语法

    /*
    格式: import xxx/xxx/package值
    注意根目录是src
    */
    
    //方式一:
    import testting
    
    //方式二: 可以依赖多个包
    import (
        "testing"
    )
    
    //方式三: 也可以给package起个别名,直接用别名调用包的函数
    import (
        t "testing"
    )
    
    
    1. go的package类似于Java中的类名称

    2. 以首字母大写来表明可被包外代码访问 (不在同一个src子目录,那么就称它为外包)

    3. 代码的package可以和所在的目录不一致

    4. 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 语言基础——package&依赖管理

          本文链接:https://www.haomeiwen.com/subject/ygzjsctx.html