GO语言包管理工具go mod以及包详解
目录
- 1.GO中包的定义与介绍
- 2. 包管理工具 go mod
- 2.1 自定义包 (可以包含多个go文件)
- 2.1.1 建立项目并go mod init初始化
- 2.1.2 自定义一个包(文件夹)并书写方法
- 2.1.3 引入自定义包,并使用
- 2.1.4 函数init执行顺序 init函数会自动执行
- 3. golang中使用第三方包
- 3.1 查找第三方包
- 3.2 安装包
- 3.2.1 go get (全局)
- 3.2.2 go download (全局)
- 补充:常用命令
- 总结
1.GO中包的定义与介绍
go中包分为三种:1.系统内置包 2. 自定义包 3.第三方包
2. 包管理工具 go mod
2.1 自定义包 (可以包含多个go文件)
2.1.1 建立项目并go mod init初始化
2.1.2 自定义一个包(文件夹)并书写方法
2.1.3 引入自定义包,并使用
2.1.4 函数init执行顺序 init函数会自动执行
3. golang中使用第三方包
3.1 查找第三方包
我们可以在https://pkg.go.dev查找常见的golang第三方包
比如 解决float精度丢失的包decimal
https://github.com/shopspring/decimal
3.2 安装包
3.2.1 go get (全局)
受网络原因限制
3.2.2 go download (全局)
3.2.3 go mod vender(本项目)(主用)
将依赖复制到当前项目的vendor下
补充:常用命令
1、初始化模块
go mod init 模块名
2 、获取远程的模块
go get 模块名
3、 查看当前依赖模块
go list -m all
4、 清除未使用到的依赖
go mod tidy
总结
到此这篇关于GO语言包管理工具go mod以及包详解的文章就介绍到这了,更多相关包管理工具go mod详解内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
GO语言包管理工具go mod以及包详解
目录 1.GO中包的定义与介绍 2. 包管理工具 go mod 2.1 自定义包 (可以包含多个go文件) 2.1.1 建立项目并go mod init初始化 2.1.2 自定义一个包(文件夹)并书写方法 2.1.3 引入自定义包,并使用 2.1.4 函数init执行顺序 init函数会自动执行 3. golang中使用第三方包 3.1 查找第三方包 3.2 安装包 3.2.1 go get (全局) 3.2.2 go download (全局) 补充:常用命令 总结 1.GO中包的定义与介绍
-
Golang中的包及包管理工具go mod详解
目录 一.包 二.包管理工具go mod 三.init函数 四.使用第三方包 一.包 1.包的种类:系统内置包.自定义包.第三方包. (1)系统内置包:go语言自带包,如str.conv.fmt等 (2)自定义包:开发者自己写的包 (3)第三方包:属于自定义包的一种,需下载到本地才能使用, 如可以从GitHub上下载的第三方包. 2.包是多个go源文件的集合,一个package下可以有多个go文件,归属于同一package 二.包管理工具go mod 1.在go的1.11版本之前如果想自定义包需
-
Linux包管理工具yum、apt的区别
目录 概述 RedHat 系列 Debian系列 系列对比 使用方式 1 dpkg包 2 APT 3 rpm包 3.1 安装 3.2 升级 3.3 卸载 3.4 查看 4 yum安装 yum特点 yum详细指令 总结 一般来说著名的 Linux 系统基本上分两大类:RedHat 系列:Redhat.Centos.Fedora 等:Debian 系列:Debian.Ubuntu 等. yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及
-
Go语言包管理工具dep的安装与使用
什么是dep? dep和go,在一定程度上相当于maven之于Java,composer之于PHP,dep是go语言官方的一个包管理工具. 相比较go get而言,dep可以直接给引入的第三方包一个专门的目录,并且可以专门制定一个配置文件,控制go项目所引入的包,版本以及其他依赖关系. dep这个项目放在golang官方的github中:https://github.com/golang/dep 官方对于dep的解释是:dep is the official experiment, but no
-
Go语言包管理工具Godep的用法
一.为什么要包管理 默认Go的第三方包都是放在Gopath的src目录下,而且这些包都没有版本号的概念,这样的可能会出现一些问题. 举个例子:当A同事将开发完程序之后,此时可能引用了一个第三方的包,过了不久之后,B同事接手了该项目,此时如果B同事通过go get 命令获取了包,而且包的版本进行了升级,恰巧这个包又不兼容以前的版本,这就会导致程序编译错误等问题.或者当这个维护的第三方包删除了,那么B同学则不能下载到该包. 由上面的例子就能知道,为什么需要进行包的依赖管理了. go里面进行包依赖管理
-
Python包管理工具pip用法详解
pip提供我们各色各样的软件(第三方库),而这些第三方库又可以给我们实现各种各样不同的功能,科学计算.画图.操作文件.聊天…… 我们可以通过Cmd终端.Pycharm.Jupyter三种平台使用pip安装这些第三方库. 官方Python 第三方库软件包地址:PyPI · Python 包索引 Anaconda,Conda,Pip的关系 Anaconda是一个python发行版.软件发行版是在系统上提前编译和配置好的软件包集合, 装好了后就可以直接用. Conda是一个包管理器.包管理器是自动化软
-
Web前端开发工具——bower依赖包管理工具
Bower 是 twitter 推出的一款包管理工具,基于nodejs的模块化思想,把功能分散到各个模块中,让模块和模块之间存在联系,通过 Bower 来管理模块间的这种联系. 包管理工具一般有以下的功能: a)注册机制:每个包需要确定一个唯一的 ID 使得搜索和下载的时候能够正确匹配,所以包管理工具需要维护注册信息,可以依赖其他平台. b)文件存储:确定文件存放的位置,下载的时候可以找到,当然这个地址在网络上是可访问的. c)上传下载:这是工具的主要功能,能提高包使用的便利性.比如想用 jqu
-
bower 强大的管理web包管理工具
Bower介绍 bower官方地址:http://bower.io/ bower是twitter的又一个开源项目,使用nodejs开发,用于web包管理.如果越来越多得开源项目都托管在github上,bower只需要将github上项目加上一个配置文件既可以使用bower方式使用安装包.作为包管理,bower能提供添加新web包,更新web包,删除web包,发布web包功能,管理包依赖.web包通常认为由html+css+javascript构成. quick start: 解决实际问题 试想我
-
浅谈node模块与npm包管理工具
在Node.js中,以模块为单位划分所有的功能,并且提供了一个完整的模块加载机制,所以我们可以将应用程序划分为各个不同的部分,并且对这些部分进行很好的协同管理.通过将各种可重用代码编写在各种模块中的方法,可以大大减少应用程序的代码量,提高应用程序的开发效率以及应用程序代码的可读性.通过模块加载机制,可以将各种第三方模块引入到我们的应用程序中. 在node.js中,提供npm包管理工具,用于从第三方网站上下载各种Node.js包. 一.模块 1.1 加载模块 在Node.js中,以模块为单位划分所
-
node.js中npm包管理工具用法分析
本文实例讲述了node.js中npm包管理工具用法.分享给大家供大家参考,具体如下: 现在安装node.js,默认就会帮我们装上了npm包管理工具,npm主要用来下载,安装,管理第三方模块. 创建一个包描述文件: npm init [-y] 查看包的信息 npm info <package-name> 查看包的版本信息 npm info <package-name> versions 安装指定的包: npm install <package-name> 默认会安装在当前
随机推荐
- Vue.js2.0中的变化小结
- MongoDB教程之入门基础知识
- 基于Angular.js实现的触摸滑动动画实例代码
- Python基于identicon库创建类似Github上用的头像功能
- Android getSystemService用法实例总结
- jQuery寻找n以内完全数的方法
- 基于jquery实现动态竖向柱状条特效
- 利用a标签自动解析URL分析网址实例
- js模仿html5 placeholder适应于不支持的浏览器
- jQuery 源码分析笔记
- c#中@的3种作用
- C#简单的加密类实例
- C#获取变更过的DataTable记录的实现方法
- Python使用smtp和pop简单收发邮件完整实例
- Python常见工厂函数用法示例
- JavaScript之实现一个简单的Vue示例
- Android自定义相机Camera实现手动对焦的方法示例
- Python计算一个点到所有点的欧式距离实现方法
- Django之提交表单与前后端交互的方法
- JS使用tween.js动画库实现轮播图并且有切换功能