Golang-包管理

为什么需要包管理

在项目开发过程中会使用的外部的包,成熟的编程语言都有自己的包管理工具,比如说PHP的composer,Java的maven,node的npm,所以在1.11版本Golang引入了go mod的方式的管理包

go mod是怎么管理的

在空白项目地址输入命令 go mod init xxxx xxxx代表项目的名称,项目中就多了go.mod文件
image
命名的时候尽量使用github.com/winslis2/xxxx 的命令方式,这样命名的原因是因为考虑到我们的包会被别人引用,当别人引用的时候go mod在找包的时候会直接根据这个地址查找
image
这个使用的require的前提是包已经发布到github
require的包会下载到GOPATH/pkg/mod文件中

怎么引入本地未发布的包

  • 第一种方法 需要修改go.mod文件,增加replace替换
    image
    需要注意的是发布时要把replace去掉
  • 第二种方法,使用work space(推荐)
    执行go work命令生成go.work文件
    image
    appdemo和test都是本地的项目(命名有点操蛋,为了做测试嘛),均未发布,这样两个本地项目就可以相互引入了,前提是go.mod也要require好才行,只是没有了replace
    注意要golang 1.18+ 版本
posted @   小刘的早餐店  阅读(38)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
历史上的今天:
2022-03-28 PHP 后期静态绑定
2022-03-28 怎么在header前输出数据
2022-03-28 file_get_content和curl的区别
2022-03-28 file_get_contens发送post请求
2022-03-28 pecl和pear的区别
2022-03-28 SOA和SOAP的区别
2022-03-28 Mysql内连接和外连接的区别
点击右上角即可分享
微信分享提示
主题色彩