Go语言中有依赖的包吗
Go语言中有依赖的包,其安装依赖包的方法有∶1、使用“go get”命令安装依赖包;2、开启“go mod”,然后在工程目录下使用"“go get"拉包;3、在github中手动下载依赖包并放到对应的目录;4、拷贝“GOPATH/pkg/mod”下对应的包;5、直接把代码放到工程里面,然后使用“go tidy”自动规整包依赖即可。
本教程操作系统:Windows10系统、go1.20版、Dell G3电脑.
Go语言中有依赖的包。
虽然go现在已经有比较好用的go mod包管理工具了。但是由于某些不可描述的原因,在安装依赖时对于新手依旧会有很多问题,一起来看看怎么解决吧?
一、直接go get
从第一天接触go的包依赖开始,你的老师或者看到的资料都是告诉你:直接go get
。
这是最原始的安装方式,能解决大部分包的依赖问题。
但不是100% 都能安装成功,比如上面截图里面的包:golang.org/x/crypto/ssh
。
直接go get
,可能会因为不可描述的原因无法访问到golang.org这个网址,包就无法安装成功。
二、配置 GOPROXY
go mod
是go 1.11 新加的特性。
所以只要go版本大于 1.11,就自带了go mod
包管理。
这是一个好东西,如果开启了go mod
。
项目里面初始化了go mod,
再在工程目录下面使用go get
拉包会自动使用go mod
拉包,并整理到go.mod文件里。
但是默认使用的源是国外的,所以安装依赖包一般都很慢,或者不能成功。
所以需要设置下他们的代理,让他们从国内的服务器出去,这样速度和稳定性都能更好些。
如果使用的是goland可以command+,
唤出偏好设置,在里面设置代理:
推荐代理到https://goproxy.cn这个上,七牛云家的,一直使用,很稳定。
修改好后,记得重新开终端!
如果使用的是其他IDE或者命令行,自行百度怎么设置代理。
设置完成后使用go env
能看到当前go使用到的环境变量,可以用来检查配置是否OK。
三、使用github
如果上面两步操作后都还不能安装成功,就得使用非正常手段来安装依赖了。
包的引用情况
首先需要理解go本地的包是怎么存放,怎么引用的。
- 如果是传统的go get下载的依赖包会存放在
GOPATH/src/域名/包名
下面。 - 如果是使用的go mod下载的依赖包会存放在
GOPATH/pkg/mod/域名/包名@版本号
下面。
所以可以把包手动下载放到对应的目录下面即可。
手动下载包
对于github国内并不是完全不能访问,只是可能会比较慢,或者时常打不开,此时可以碰碰运气。
官方包都可以在这个仓库下面找到:https://github.com/golang
如何安装在每个包的README.md里面都会有描述:
The easiest way to install is to run go get -u http://golang.org/x/net. You can also manually git clone the repository to $GOPATH/src/http://golang.org/x/net.
大部分的依赖包都能在github里面找到对应包。
四、利用人脉
沿用上一种方案的思路,不是所有人都不能科学上网,可以寻求身边能科学上网的朋友,帮你下载包给你。
然后把GOPATH/pkg/mod
下面对应的包拷贝。
五、使用go mod
最后还有一种场景,那就是知道包名字,通过文档拿到一些范例demo。
直接把代码放到工程里面,然后使用go tidy
来自动规整包依赖。
一些常识
- 1、包名就是仓库地址
比如:github.com/gin-gonic/gin
报名大都是代码所在仓库地址,大都是可以直接访问的。
- 2、包里面的包
依赖包有一个非常好玩的地方,有时使用的包是包里面的包。
可能有点绕,但是很好理解。
比如文章开头的:golang.org/x/crypto/ssh
这个包,
他就是 golang.org/x/crypto
下面的包。
所以直接安装ssh包,往往会出现找不到包的情况,所以你就需要往上一级安装。
以上是Go语言中有依赖的包吗的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

学习如何在Golang中求解方差在统计学中,方差(Variance)是衡量一组数据分散程度的重要指标,它用来衡量数据集合中各个数据点与均值之间的差距。在Golang中,我们可以通过编写代码来求解一组数据的方差。接下来将介绍如何在Golang中实现方差的计算,并提供具体的代码示例。一、方差的定义方差的计算公式如下所示:[Var(X)=rac{

在Go中使用第三方包:使用goget命令安装包,如:gogetgithub.com/user/package。导入包,如:import("github.com/user/package")。示例:使用encoding/json包解析JSON数据:安装:gogetencoding/json导入:import("encoding/json")解析:json.Unmarshal([]byte(jsonString),&data)

Go语言是一种现代开源编程语言,以其并发支持、内存安全和跨平台兼容性而闻名。它也是一种出色的脚本语言,提供了丰富的内置函数和实用工具,包括:并发支持:简化同时执行多个任务的脚本编写。内存安全:垃圾回收器自动释放未使用的内存,防止内存泄漏。跨平台兼容性:可以在Windows、Linux、macOS和移动平台上编译。丰富的标准库:提供文件I/O、网络请求和正则表达式等常见脚本功能。

Go语言生态系统提供了丰富且强大的库,其中包括:Gin(用于构建web应用程序的框架)Gorm(用于管理数据库交互的ORM)Zap(用于高性能日志记录)Viper(用于管理应用程序配置)Prometheus(用于监控和报警)这些库帮助开发人员快速有效地构建健壮且可维护的Go应用程序。

在Go中,自定义类型可使用type关键字定义(struct),包含命名字段。它们可以通过字段访问运算符访问,并可附加方法来操作实例状态。在实际应用中,自定义类型用于组织复杂数据和简化操作。例如,学生管理系统使用自定义类型Student存储学生信息,并提供计算平均成绩和出勤率的方法。

Go语言可在Android系统中广泛应用,可用于构建AndroidActivity和Service,进行数据处理和分析,具体包括:在AndroidActivity中使用Go语言:引入Go语言库,创建Go语言类,并在AndroidManifest.xml文件中注册Go语言类。在AndroidService中使用Go语言:创建Go语言类,并在AndroidManifest.xml文件中注册Go语言类。使用Go语言进行数据处理和分析:可用于构建HTTPAPI、并发处理任务、编解码二进制数据。

通过使用Go语言的内置测试框架,开发者可以轻松地为他们的代码编写和运行测试。测试文件以_test.go结尾,并包含Test开头的测试函数,其中*testing.T参数表示测试实例。错误信息使用t.Error()记录。可以通过运行gotest命令来运行测试。子测试允许将测试函数分解成更小的部分,并通过t.Run()创建。实战案例包括针对utils包中IsStringPalindrome()函数编写的测试文件,该文件使用一系列输入字符串和预期输出来测试该函数的正确性。

Go语言中有依赖的包,其安装依赖包的方法有∶1、使用“go get”命令安装依赖包;2、开启“go mod”,然后在工程目录下使用“go get”拉包;3、在github中手动下载依赖包并放到对应的目录;4、拷贝“GOPATH/pkg/mod”下对应的包;5、直接把代码放到工程里面,然后使用“go tidy”自动规整包依赖即可。