首页 > 其他分享 >Go 语言进行依赖包的管理的几种方式

Go 语言进行依赖包的管理的几种方式

时间:2023-04-06 16:56:09浏览次数:38  
标签:依赖 命令 几种 go Go 源代码 安装

Go 语言具有丰富的开源包管理工具,可以方便地进行依赖包的管理。下面介绍如何在 Go 语言中安装依赖包。

使用 go get 命令
go get 命令可以从远程代码仓库(比如 GitHub)下载 Go 语言包,并安装到 $GOPATH/src 目录下。通常使用以下命令来安装一个依赖包:

go get github.com/依赖库路径

例如,要安装 Gin Web 框架,可以执行以下命令:

go get github.com/gin-gonic/gin

使用 go mod 命令
Go 1.11 版本之后,Go 语言原生支持模块化管理,可以使用 go mod 命令管理依赖包。可以通过以下步骤在一个 Go 语言项目中使用模块化:

① 进入 Go 语言项目的根目录,并执行以下命令初始化一个新的模块:

go mod init 模块名称
例如,要初始化一个名为 myproject 的新模块,可以执行以下命令:

go mod init myproject

② 在 Go 语言源代码中引用需要的依赖包,并使用 go build 命令构建程序,此时会自动下载依赖包:

例如,在 Go 语言源代码中引用 logrus 日志库:

import "github.com/sirupsen/logrus"

执行以下命令,构建程序:

go build

手动下载和安装依赖包
如果依赖包没有托管在远程代码仓库中,也可以手动下载源代码并安装。可以执行以下步骤手动安装一个依赖包:

① 下载源代码,可以使用 Git 工具从远程代码仓库中克隆:

git clone https://github.com/依赖库路径

例如,要下载 Gin Web 框架,可以执行以下命令:

git clone https://github.com/gin-gonic/gin

② 进入源代码目录,执行以下命令安装依赖包:

go install

至此,我们介绍了 Go 语言中三种常见的安装依赖包的方法。超过 90% 的情况下,使用 go get 或者 go mod 即可完成相关操作,少部分情况才需要手动下载和安装依赖包。

标签:依赖,命令,几种,go,Go,源代码,安装
From: https://www.cnblogs.com/wzf-Learning/p/17293332.html

相关文章

  • C#获取当前程序运行路径的几种方法
    从外部程序启动另一个程序,路径有点不一样;logger.InfoFormat($"{System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName},{System.Environment.CurrentDirectory},{System.IO.Directory.GetCurrentDirectory()}"+$",{System.AppDomain......
  • go语言发送请求后接收到json如何提取其中指定参数
    由于用过python的缘故,一开始想着直接取后来发现并不行,于是上网查找资料发现需要定义结构体绑定参数,后来定义完结构体后发现并没有解决问题,而且过程较为繁琐,于是想着先将接收到的数据转为字符串body,_:=io.ReadAll(response.Body)fmt.Println(string(body))利用上面的代码发......
  • golang pprof 监控系列(4) —— goroutine thread 统计原理
    golangpprof监控系列(4)——goroutinethread统计原理大家好,我是蓝胖子。在之前golangpprof监控系列文章里我分别介绍了gotrace以及gopprof工具对memory,block,mutex这些维度的统计原理,今天我们接着来介绍golangpprof工具对于goroutine和thread的统计原理。还记得在......
  • Golang 应用接入 Prometheus 监控
    前言Prometheus提供了官方版Golang库(https://github.com/prometheus/client_golang)用于采集并暴露监控数据,本文快速为你介绍如何使用官方版Golang库来暴露Golangruntime相关的数据,以及其它一些基本简单的示例,并使用Prometheus监控服务来采集指标展示数据。❝有关全面......
  • codeforces 1793D Moscow Gorillas
    https://codeforces.com/contest/1793/problem/D解题思路依次找出MEX=1..n+1的序列数量就能得解。MEX=n+1只有全序列这一种情况。MEX=1时,找出两个序列中1的位置,较小位置左边的元素构成的子序列,较大位置右边的元素构成的子序列,以及两个位置中间的元素构成的子序列都满......
  • 【过滤器设计模式详解】C/Java/JS/Go/Python/TS不同语言实现
    简介过滤器模式(FilterPattern)或标准模式(CriteriaPattern),是一种结构型模式。这种模式允许使用不同的标准条件来过滤一组对象,并通过逻辑运算的方式把各条件连接起来,它结合多个标准来获得单一标准。例子将创建一个Person对象、Criteria接口和实现了该接口的实体类,来过滤Perso......
  • Go 语言体系下的微服务框架选型: Dubbo-go
    本文介绍了Go微服务体系发展与选型,过去一年优雅上下线以及对未来的展望。作者简介:牛学蔚(GitHub:@justxuewei):ApacheDubboPMC,对云原生、中间件、容器等领域有浓厚兴趣,活跃在Dubbo和Katacontainers两个开源项目中。一、Go微服务体系发展与选型随着微服务技术的快速发展,其在......
  • 在 Google 工作是什么体验?
    --题图是去Google中国蹭饭拍的。阅读文本大概需要1分钟。先提醒大家一波,每年一度、全球瞩目的GoogleIO2018马上就要来了,北京时间5月9号凌晨1点开始,记得观看啊。至于为什么观看?因为每年GoogleIO大会代表着互联网、科技界的趋势,冥冥中指明了未来发展的方向,所以,不止......
  • 插件式的自恢复保险丝优恩有哪几种系列型号?
    PPTC自恢复保险丝,大家熟知的可能就是贴片式的PPTC,但实际上,自恢复保险丝还有另一种——插件系列。插件式的自恢复保险丝同样也是在过流防护中使用较为频繁,以优恩为例,它的规格系列主要有七种。从网站统计到有:UN6系列(6V)、UN16系列(16V)、UN30系列(30V)、UN60系列(60V)、UN135系列(1......
  • (转)go语言web开发22 - beego框架之logs包使用
    原文:https://www.cnblogs.com/hei-ma/articles/13791609.htmlbeego框架的logs包是一个用来处理日志的库,目前支持的引擎有file(输出日志到文件)、console(终端输出)、net(输出到网络地址)、smtp(发送邮件)。 一、beego自带的日志功能(了解即可)beego有自带的日志功能(了解即可,即将被弃用......