go下载gin框架

发布时间:2025-12-09 22:14:34 浏览次数:4

1、开启Go Modules功能(已开启可忽略此步骤)

go module是go官方自带的go依赖管理功能,从Go 1.13版本正式推荐使用,它可以将项目下的所有依赖集中到 go.mod 文件,进行集中管理。使用go module管理依赖将会在项目根目录下生成两个文件 go.mod(负责记录当前项目的所有依赖)和go.sum(记录每个依赖库的版本和哈希值)

我们使用如下命令开启go modules功能:

go env -w GO111MODULE=on

2、生成go.mod文件(目录下已有此文件可忽略此步骤)

go mod init [项目文件夹名称]

例子

go mod init my_gin

3、使用国内代理

go env -w GOPROXY=https://goproxy.cn

4、下载gin框架

go get -u github.com/gin-gonic/gin

结果如下图

5、常见错误

5.1、$GOPATH/go.mod exists but should not

问题原因: 老版本我们都是在环境变量里面设置GOPATH用来管理项目的,我们第一步使用了GO Modules,GOPATH和GO Modules这两个都是用来管理项目的,开启模块支持后生成的go.mod文件,不能在GOPATH 指定的目录下
解决办法 1、: 不要在环境变量指定的GOPATH目录下创建项目,在其他目录下创建项目,你的环境变量GOPATH目录下不能存在go.mod文件(推荐)
解决办法 2、: 将环境变量GOPATH删除,因为GOPATH和go.mod都是用来管理项目,二者不能在同一个目录下,go.mod比GOPATH更高级
GOPATH(项目管理)和go.mod(go modules项目管理)比较:
1、最早的时候,Go所依赖的所有的第三方库都放在GOPATH这个目录下面,下载的依赖包也没有版本概念,这就导致了同一个库只能保存一个版本的代码。如果不同的项目依赖无法依赖同一个第三方的库的不同版本,并且,代码开发必须在GOPATH的src目录下。这在实际开发中造成许多的问题。
2、go mod的优势,项目不在需要放到$GOPATH/src,依赖包的版本控制
交由go.mod文件控制。在go.mod用require语句指定包和版本 ,go命令会根据指定的路径和版本下载包,指定版本时可以用latest,这样它会自动下载指定包的最新版本;如果,go.mod中没有指定,go命令会自动下载代码中的依赖的最新版本

5.2、错误go: go.mod file not found in current directory or any parent directory.

错误原因,缺少go.mod文件,按照第一步跟着操作即可

6、在项目目录下新建main.go文件

package mainimport "github.com/gin-gonic/gin"func main() {//创建默认的路由引擎web := gin.Default()//配置路由web.GET("/", func(c *gin.Context) {c.String(200, "值:%v", "游戏是用来娱乐放松的,不是用来浪费青春的")})web.GET("/news", func(c *gin.Context) {c.String(200, "新闻页面")})//启动一个web服务web.Run(":8000")}

8、运行项目

go run main.go

9、golang程序的热加载

以上操作每当我们修改代码的的时候,就邀重新运行一次go run main.go实行内容刷新 ,这样很麻烦,热加载就是当我们修改代码时,程序自动重新加载并且执行,省去了手动执行编译的过程

go get github.com/pilu/fresh fresh
需要做网站?需要网络推广?欢迎咨询客户经理 13272073477