1、go mod和GOPATH的区别和使用(gin安装方式一)

  • go1.11版本前所有在项目都会放至到GOROOT或GOPATH的src目录下才能运行,该版本后引入了go module进行包管理,任何目录下都可以执行go文件,GOROOT和GOPATH只用于存放内置库或第三方库;
  • 但是在使用go mod前要先配置好GOROOT和GOPATH;

1.1 go mod使用

1. 配置go env,配置使用MODULE管理,GOPROXY改为国内七牛云的镜像源;

各操作系统可以有自己的配置方法,windows可以用set,linux和mac可以用export;通用的方法可以用go env -w

GO111MODULE="on"GOPROXY="https://goproxy.io,direct"

2. 初始化

(1) 随便在新建一个目录

(2) go mod init xxxx(这个是项目名可以随便起),会生成go.mod文件,go.mod文件的目录被称为模块根,定义了它所在在目录为一个模块;

(3)创建一个main.go文件,写入如下代码:这是gin的一个基本项目,在网页打印hello gin;

package mainimport "github.com/gin-gonic/gin"func main() {// router := gin.Default()router := gin.New()router.GET("/", func(ctx *gin.Context) {ctx.String(200, "hello gin")})router.Run(":9000")
}

(4)go mod tidy :检测依赖,将依赖写入go.mod,也会生成go.sum记录所依赖在项目在版本在锁定;

(5)go mod download:下载依赖至本地(GOPATH下),而不使用go get ;

(6)go mod vendor:将刚刚下载在依赖转移到vendor(自动新建)目录下,这样是可以使用了;

(7)使用go run main.go:启动程序,建议在终端启动;

(8)访问该页

(9)如果要新增使用某个包,只要在项目里import这个包,然后再更新依赖是可以;

(10)go mod常用命令

go mod init # 初始化go.modgo mod tidy # 更新依赖文件go mod download # 下载依赖go mod vendor # 将依赖移到本地的vendor文件go mod edit # 手动修改依赖文件go mod graph # 打印依赖图go mod verify # 校验依赖go mod why # 解释为什么需要包和模块

2、gin安装方式二(在GOPATH下安装成功)

  1. go环境配置好,包括GOROOT,GOPATH
  2. 修改go env(GO111MODULE="on", GOPROXY="https://goproxy.io,direct"),linux可以使用环境变量修改,或者使用go env -w的方式解决
  3. 初始化go mod :go mod  init  xx_gin(名字随便起)
  4. 安装gin:go get -u github.com/gin-gonic/gin,会下载至GOPATH的pkg目录下
  5. 使用go run xxx.go启动,不要使用vscode的run
  6. 如果还不行,go mod tidy更新一下mod

3、go mod 如何实现导入本地包

1. GO111MODULE="auto":该字段设置为auto

2. 在新project先初始化go mod init 模块名

3. 函数名的首字母大写,表示是公有方法

4、使用 import "模块名/包名" 的方式导入

5、使用的包下方法: 包名.函数名() 进行调用这个本地包的方法

比较好的说明资料:前景 · Go语言中文文档https://www.topgoer.com/

安装gin和mod使用相关推荐

  1. go 安装gin(使用git clone)

    安装go包最快捷的方法是go get,一步到位,但是需要翻墙,取而代之的方法是用git clone直接把需要的包从github拉下来,也很慢,但至少是可行的- 另外,不是吹牛,用本文的方法安装一次gi ...

  2. Go 安装 gin 速度慢解决方案(Windows下使用阿里云代理)

    最近安装gin发现很慢,后来发现阿里云有代理服务. 修改代理,也就是使用阿里云代理下载 go env -w GO111MODULE=ongo env -w GOPROXY=https://mirror ...

  3. 安装gin失败 # cd .; git clone -- https://github.com/gin-gonic/gin xcrun: error: invalid active develope

    错误: #cd .; git clone – https://github.com/gin-gonic/gin /Users/lizhen/go/src/github.com/gin-gonic/gi ...

  4. 我的世界java版启动器怎么安装mod_我的世界MOD怎么安装 手机版MOD启动器下载

    MOD需要加载才能起作用,通常需要使用启动器来启动MOD.今天蕾米为大家带来我的世界MOD怎么安装,手机版MOD启动器下载,想知道我的世界MOD怎么用的小伙伴一起来看看吧! ▍MOD怎么安装 1.首先 ...

  5. Golang 安装 Gin 失败解决方案

    正常情况下安装使用官方提供的命令直接安装即可: go get -u github.com/gin-gonic/gin 因为有些包需要科学上网,导致安装失败,这时就需要修改 GO 语言环境配置,修改代理 ...

  6. html怎么安装整合包,星露谷物语|SMAPI安装教程,MOD推荐!

    星露谷物语在steam上面没有创意工坊,所以如果在游戏的游玩中需要使用MOD的话,我们只能去NEXUSMODS第三方网站下载安装MODS.而在安装MODS之前,需要先安装SMAPI才可以正常使用MOD ...

  7. M1/M2-MacBook 运行我的世界(MC)以及安装forge/fabric mod的简单教程

    文章目录 方法1. 正版游戏启动器 方法2. HMCL快速游玩 下载 HMCL 安装 Java 选择版本 番外1. 安装 mod 和 材质包 安装 forge 或 fabric 安装 mod 安装 材 ...

  8. Java我的世界forge安装失败,我的世界安装Forge导入mod的方法

    qaq 第一个是mod api的安装方法 api有 forge api cauldron player api render player api liteloader 我们用的是第一种 forge ...

  9. 【已解决】安装Gin出现:go get: module github.com/gin-gonic/gin: Get “https://proxy.golang.org/github.com/

    # 设置goproxy.io代理 go env -w GOPROXY="https://goproxy.io" # 设置GO111MOUDLE go env -w GO111MOD ...

最新文章

  1. ubuntu远程桌面
  2. Java领域的对象如何传输-基于 socket 进行对象传输
  3. Mac电脑「空格键」的使用技巧
  4. mysql php示例,PHP操作MYSQL简单示例
  5. win10 mbr下装linux,(MBR模式)Win10下安装Ubuntu18.04双系统
  6. 14、高可用keepalived搭建及切换
  7. 一个back propagation的例子
  8. IDEA快捷键+使用小技巧
  9. PHP之安装Pear
  10. 硬盘打不开了的修复方法?
  11. 2018年列车已到站,请您下车
  12. ssh免密码登录全过程
  13. 运维工作发展的几个阶段
  14. 【学习点滴】linux调试工具、cmake和网络抓包
  15. 2018-2019-2 20175317 实验三《敏捷开发与XP实践》实验报告
  16. 农业病虫害数据集与算法——调研整理
  17. Android10 系统应用wifi连接和静态ip代理设置
  18. java基础/java调用shell命令和脚本
  19. JS调试的一些小技巧
  20. php 伪静态 获取当前页面路径_php伪静态如何获取地址栏url -

热门文章

  1. 原生JavaScript实现连连看游戏
  2. Scons安装和使用
  3. 我为什么要写Sinon.JS
  4. oracle导出辅助账明细,AO2011导入国库集中支付系统3.0的辅助账资料.doc
  5. python中关于命名的例子_利用Python批量重命名文件(给非技术人员的Python实例参考)...
  6. python idle是什么_python中idle是什么意思
  7. web怎么将dwg转换图片_怎么将DWG图纸转换成JPG格式图片
  8. python 金额计算_Python | 根据销售金额计算折扣
  9. Halcon 卡尺找圆
  10. 【FXCG】传奇人物保罗•都铎•琼斯(二)