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 相关文章推荐
go语言中json数据的读取和写出操作
Apr 28 Golang
golang 实现对Map进行键值自定义排序
Apr 28 Golang
golang import自定义包方式
Apr 29 Golang
对Golang中的FORM相关字段理解
May 02 Golang
golang 定时任务方面time.Sleep和time.Tick的优劣对比分析
May 05 Golang
Golang的继承模拟实例
Jun 30 Golang
手把手教你导入Go语言第三方库
Aug 04 Golang
使用GO语言实现Mysql数据库CURD的简单示例
Aug 07 Golang
Go Plugins插件的实现方式
Aug 07 Golang
golang 语言中错误处理机制
Aug 30 Golang
Golang并发工具Singleflight
May 06 Golang
Go本地测试解耦任务拆解及沟通详解Go本地测试的思路沟通的重要性总结
Jun 21 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
咖啡历史、消费和行业趋势
2021/03/03 咖啡文化
使用PHP实现下载CSS文件中的图片
2015/12/06 PHP
深入浅析安装PhpStorm并激活的步骤详解
2020/09/17 PHP
jQuery实现的多级下拉菜单效果代码
2015/08/24 Javascript
JQuery点击行tr实现checkBox选中的简单实例
2016/05/26 Javascript
Node.js的Web模板引擎ejs的入门使用教程
2016/06/06 Javascript
JavaScript DOM 对象深入了解
2016/07/20 Javascript
JS实现运动缓冲效果的封装函数示例
2018/02/18 Javascript
微信小程序实现左右列表联动
2020/05/19 Javascript
Nodejs中使用puppeteer控制浏览器中视频播放功能
2019/08/26 NodeJs
vue设置导航栏、侧边栏为公共页面的例子
2019/11/01 Javascript
vue把输入框的内容添加到页面的实例讲解
2019/11/11 Javascript
vue项目如何监听localStorage或sessionStorage的变化
2021/01/04 Vue.js
手动实现把python项目发布为exe可执行程序过程分享
2014/10/23 Python
Python字符串处理函数简明总结
2015/04/13 Python
matplotlib绘制多个子图(subplot)的方法
2019/12/03 Python
python画图常规设置方式
2020/03/05 Python
Python验证码截取识别代码实例
2020/05/16 Python
Python selenium爬取微博数据代码实例
2020/05/22 Python
Python如何将装饰器定义为类
2020/07/30 Python
Python logging模块handlers用法详解
2020/08/14 Python
利用python制作拼图小游戏的全过程
2020/12/04 Python
详解canvas drawImage()方法绘制图片不显示的问题
2018/10/08 HTML / CSS
Gtech官方网站:地毯清洁器、吸尘器及园艺设备
2018/05/23 全球购物
日本索尼音乐商店:Sony Music Shop
2018/07/17 全球购物
到底Java是如何传递参数的?是by value或by reference?
2012/07/13 面试题
自主招生自荐信指南
2014/02/04 职场文书
楼面经理岗位职责范本
2014/02/18 职场文书
班班通项目实施方案
2014/02/25 职场文书
工程力学专业自荐信范文
2014/03/17 职场文书
服装仓管员岗位职责
2014/06/17 职场文书
关于感恩的演讲稿400字
2014/08/26 职场文书
简爱读书笔记
2015/06/26 职场文书
结婚喜宴祝酒词
2015/08/10 职场文书
Python通过m3u8文件下载合并ts视频的操作
2021/04/16 Python
spring cloud 配置中心客户端启动遇到的问题
2021/09/25 Java/Android