win10下go mod配置方式


Posted in Golang onApril 25, 2021

这是因为获取golang.org/x/...时需要翻墙,而我这里没有翻墙,不过没关系

设置下代理即可:

// bash mac  
export GOPROXY=https://goproxy.io
// powershell windows 
$env:GOPROXY = https://goproxy.io

然后再当前目录下

用powershell 执行命令:

go mod download

相关命令:

go mod init:初始化modules

go mod download:下载modules到本地cache

go mod edit:编辑go.mod文件,选项有-json、-require和-exclude,可以使用帮助go help mod edit

go mod graph:以文本模式打印模块需求图

go mod tidy:检查,删除错误或者不使用的modules,下载没download的package

go mod vendor:生成vendor目录

go mod verify:验证依赖是否正确

go mod why:查找依赖

go test 执行一下,自动导包

go list -m 主模块的打印路径

go list -m -f={{.Dir}} print主模块的根目录

go list -m all 查看当前的依赖和版本信息

linux 编译

1

GOOS=linux;GOARCH=amd64;CGO_ENABLED=0

-o 指定编译的输出文件目录

补充:win10下go mod 与gopath

GOPATH跟GOROOT不同,它是我们指向的工作空间。我们运行一个项目时需要导入依赖包,默认情况下会在我们配置的go环境的src文件下去查找,比如本身自带的“fmt”,“os”诸如此类等都在此包下

win10下go mod配置方式

go对自己配置的包的引用有严格的限制,同个目录的包是一样的,一般包名都一目录名命名,不同目录间的包可以相互引用但前提是你这个项目需要放在GOPATH路径下的src文件内才可以相互引用 在其它的目录下是引用不了的。

对于一些项目需要从github上面获取依赖这样的上面的方式效率可能不高,因为国内go get因为网络问题可能下载get不到或者太慢,这时候就可以摒弃gopath转而使用go mod了,不在需要在gopath下新建项目了,可以在任何你喜欢的目录下新建,win10具体操作如下:

win +r打开cmd

go env -w GO111MODULE=on(默认模式为auto,还有off模式 on模式是使用模块,gopath不生效;off不适用模块,gopath生效;自己写的一些项目如果不需要从网上导入依赖的话可以切换成go env -w GO111MODULE=off模式,反正就是一条命令,不用再涉及其它的环境配置)

win10下go mod配置方式

然后就可以在任意路径新建项目了,这里比如我在D:\file\github\golang\code\chapter2\新建一个sample项目,然后再

D:\file\github\golang\code\chapter2\sample下新建一个main.go文件(这是项目的起点)

然后在该目录下打开cmd

win10下go mod配置方式

我这里是因为已经生成了所以提示exists build命令也可以指定单个.go文件进行编译,但是如果是在main.go起点文件的目录下build,它可以循着main.go中导入的依赖将项目中的其它.go文件一同build

会在该目录下生成一个go.mod文件,现在试下你的项目能不能运行

可以在cmd下执行go env这里面有很多参数可以查看

win10下go mod配置方式

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Golang 相关文章推荐
golang 比较浮点数的大小方式
May 02 Golang
解决golang 关于全局变量的坑
May 06 Golang
go xorm框架的使用
May 22 Golang
K8s部署发布Golang应用程序的实现方法
Jul 16 Golang
Golang 并发下的问题定位及解决方案
Mar 16 Golang
详解Golang如何优雅的终止一个服务
Mar 21 Golang
golang生成vcf通讯录格式文件详情
Mar 25 Golang
简单聊聊Golang中defer预计算参数
Mar 25 Golang
Go语言安装并操作redis的go-redis库
Apr 14 Golang
Golang 链表的学习和使用
Apr 19 Golang
Golang gRPC HTTP协议转换示例
Jun 16 Golang
Go gorilla securecookie库的安装使用详解
Aug 14 Golang
Go语言-为什么返回值为接口类型,却返回结构体
Apr 24 #Golang
go:垃圾回收GC触发条件详解
Apr 24 #Golang
基于go interface{}==nil 的几种坑及原理分析
Apr 24 #Golang
golang interface判断为空nil的实现代码
Apr 24 #Golang
golang判断key是否在map中的代码
Apr 24 #Golang
Go语言操作数据库及其常规操作的示例代码
Apr 21 #Golang
为什么不建议在go项目中使用init()
Apr 12 #Golang
You might like
深入解析PHP的Yii框架中的缓存功能
2016/03/29 PHP
php+mongodb判断坐标是否在指定多边形区域内的实例
2016/10/28 PHP
理解Javascript_13_执行模型详解
2010/10/20 Javascript
js实现图片轮换效果代码
2013/04/16 Javascript
让网页跳转到指定位置的jquery代码非书签
2013/09/06 Javascript
解析prototype,JQuery中跳出each循环的方法
2013/12/12 Javascript
基于NodeJS的前后端分离的思考与实践(六)Nginx + Node.js + Java 的软件栈部署实践
2014/09/26 NodeJs
javascript制作sql转换为stringBuffer的小工具
2015/04/03 Javascript
js实现键盘Enter键提交表单的方法
2015/05/27 Javascript
基于JavaScript实现根据手机定位获取当前具体位置(X省X市X县X街道X号)
2015/12/29 Javascript
JQuery统计input和textarea文字输入数量(代码分享)
2016/12/29 Javascript
AngularJS中使用three.js的实例详解
2017/07/21 Javascript
微信小程序实现打开内置地图功能【附源码下载】
2017/12/07 Javascript
微信小程序使用gitee进行版本管理
2018/09/20 Javascript
node.js学习笔记之koa框架和简单爬虫练习
2018/12/13 Javascript
Vue实现星级评价效果实例详解
2019/12/30 Javascript
小程序实现长按保存图片的方法
2019/12/31 Javascript
vue使用video插件vue-video-player的示例
2020/10/03 Javascript
举例区分Python中的浅复制与深复制
2015/07/02 Python
Python增强赋值和共享引用注意事项小结
2019/05/28 Python
Python数据分析模块pandas用法详解
2019/09/04 Python
解决Pytorch训练过程中loss不下降的问题
2020/01/02 Python
一款利用纯css3实现的超炫3D表单的实例教程
2014/12/01 HTML / CSS
CSS3制作圆角图片和椭圆形图片
2016/07/08 HTML / CSS
巴黎欧莱雅法国官网:L’Oreal Paris
2019/04/30 全球购物
体育教师工作总结的自我评价
2013/10/10 职场文书
畜牧兽医本科生的自我评价
2014/03/03 职场文书
观看《永远的雷锋》心得体会
2014/03/12 职场文书
爱国卫生月活动总结范文
2014/04/25 职场文书
设备管理实施方案
2014/05/31 职场文书
2015年国庆节慰问信
2015/03/23 职场文书
2015年三万活动总结
2015/03/25 职场文书
医院办公室主任岗位职责
2015/04/01 职场文书
酒吧七夕情人节宣传语
2015/11/24 职场文书
《你在为谁工作》心得体会(共8篇)
2016/01/20 职场文书
使用Navicat Premium工具将oracle数据库迁移到MySQL
2021/05/27 Oracle