小白之 Gin 安装遇到的坑

Gin 初始安装

1、安装网官的文档执行
go get -u github.com/gin-gonic/gin

Gin 安装遇到的坑

因不能翻墙,百度了说 用gopm 解决,群里的小伙伴说这种试早就过时了,现在都是用go mod 来解决
于是 开启go mod

go env -w GOBIN=/Users/youdi/go/bin
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct // 使用七牛云的

使用go mod 来 管理一个新的项目

mkdir Gone
cd Gone
go mod init Gone

查看一下go.mod 文件

module Gone

go 1.16

go.mod文件一旦创建后,它的内容将会被go toolchain全面掌控。go toolchain会在各类命令执行时,比如go get、go build、go mod等修改和维护go.mod文件。

go.mod 提供了module, require、replace和exclude 四个命令

  • module 语句指定包的名字(路径)
  • require 语句指定的依赖项模块
  • replace 语句可以替换依赖项模块
  • exclude 语句可以忽略依赖项模块
package main

import (
    "github.com/gin-gonic/gin"
)

func main() {
    r := gin.Default()
    r.GET("/ping", func(c *gin.Context) {
        c.JSON(200, gin.H{
            "message": "pong",
        })
    })
    r.Run() // listen and serve on 0.0.0.0:8080 (for windows "localhost:8080")
}

执行 go run main.go 运行代码会发现 go mod 会自动查找依赖自动下载
结果报错

main.go:3:8: no required module provides package github.com/gin-gonic/gin; to add it:
        go get github.com/gin-gonic/gin

执行:go mod edit -require github.com/gin-gonic/gin@latest 解决,指定Gin的版本
再次运行 go run main.go 报错

go: github.com/gin-gonic/gin@v1.7.4: missing go.sum entry; to add it:
        go mod download github.com/gin-gonic/gin

然后执行 go mod tidy 再次执行 go run main.go 终于跑起来了

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!