Gin框架安装

安装要求

Go 1.13 及以上版本

安装

要安装 Gin 软件包,需要先安装 Go 并设置 Go 工作区。

1.下载并安装 gin:

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

完整流程如下:

yshuqdeMacBook-Pro:gin yshuq$ go get -u github.com/gin-gonic/gin
go: go.mod file not found in current directory or any parent directory.
	'go get' is no longer supported outside a module.
	To build and install a command, use 'go install' with a version,
	like 'go install example.com/cmd@latest'
	For more information, see https://golang.org/doc/go-get-install-deprecation
	or run 'go help get' or 'go help install'.
yshuqdeMacBook-Pro:gin yshuq$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/yshuq/Library/Caches/go-build"
GOENV="/Users/yshuq/Library/Application Support/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/yshuq/Documents/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/yshuq/Documents/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.18.2"
GCCGO="gccgo"
GOAMD64="v1"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/dev/null"
GOWORK=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/kj/p7vrn06x37n6t9h_2chhgvv80000gn/T/go-build3399388752=/tmp/go-build -gno-record-gcc-switches -fno-common"
You have new mail in /var/mail/yshuq
yshuqdeMacBook-Pro:gin yshuq$ go version
go version go1.18.2 darwin/amd64

这里需要初始化go模块 go.mod

shuqdeMacBook-Pro:gin yshuq$ go mod init gin
go: creating new go.mod: module gin
yshuqdeMacBook-Pro:gin yshuq$ ls -al
total 8
drwxr-xr-x  3 yshuq  staff  96 Oct 27 23:35 .
drwxr-xr-x  3 yshuq  staff  96 Oct 27 20:02 ..
-rw-r--r--  1 yshuq  staff  20 Oct 27 23:35 go.mod

再次执行安装Gin框架

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




go: module github.com/gin-gonic/gin: Get "https://proxy.golang.org/github.com/gin-gonic/gin/@v/list": dial tcp 172.217.160.113:443: i/o timeout
You have new mail in /var/mail/yshuq

解决办法:

yshuqdeMacBook-Pro:gin yshuq$ go env -w GOPROXY=https://goproxy.cn
yshuqdeMacBook-Pro:gin yshuq$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/yshuq/Library/Caches/go-build"
GOENV="/Users/yshuq/Library/Application Support/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/yshuq/Documents/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/yshuq/Documents/go"
GOPRIVATE=""
GOPROXY="https://goproxy.cn"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.18.2"
GCCGO="gccgo"
GOAMD64="v1"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/yshuq/work/ysq/go/gin/go.mod"
GOWORK=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/kj/p7vrn06x37n6t9h_2chhgvv80000gn/T/go-build3686622339=/tmp/go-build -gno-record-gcc-switches -fno-common"

再次安装Gin框架

yshuqdeMacBook-Pro:gin yshuq$ go get -u github.com/gin-gonic/gin
go: downloading github.com/gin-gonic/gin v1.9.1
go: downloading github.com/gin-contrib/sse v0.1.0
go: downloading github.com/mattn/go-isatty v0.0.19
go: downloading golang.org/x/net v0.10.0
go: downloading github.com/mattn/go-isatty v0.0.20
go: downloading github.com/bytedance/sonic v1.9.1
go: downloading github.com/goccy/go-json v0.10.2
go: downloading golang.org/x/net v0.17.0
go: downloading github.com/json-iterator/go v1.1.12
go: downloading github.com/go-playground/validator/v10 v10.14.0
go: downloading github.com/pelletier/go-toml/v2 v2.0.8
go: downloading github.com/bytedance/sonic v1.10.2
go: downloading github.com/ugorji/go/codec v1.2.11
go: downloading github.com/go-playground/validator/v10 v10.15.5
go: downloading github.com/pelletier/go-toml/v2 v2.1.0
go: downloading google.golang.org/protobuf v1.30.0
go: downloading github.com/pelletier/go-toml v1.9.5
go: downloading github.com/go-playground/validator v9.31.0+incompatible
go: downloading github.com/ugorji/go v1.2.11
go: downloading gopkg.in/yaml.v3 v3.0.1
go: downloading golang.org/x/sys v0.8.0
go: downloading google.golang.org/protobuf v1.31.0
go: downloading golang.org/x/sys v0.13.0
go: downloading github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd
go: downloading github.com/modern-go/reflect2 v1.0.2
go: downloading github.com/gabriel-vasile/mimetype v1.4.2
go: downloading github.com/go-playground/universal-translator v0.18.1
go: downloading github.com/leodido/go-urn v1.2.4
go: downloading golang.org/x/crypto v0.9.0
go: downloading golang.org/x/text v0.9.0
go: downloading golang.org/x/crypto v0.14.0
go: downloading github.com/gabriel-vasile/mimetype v1.4.3
go: downloading golang.org/x/text v0.13.0
go: downloading github.com/chenzhuoyu/base64x v0.0.0-20221115062448-fe3a3abad311
go: downloading golang.org/x/arch v0.3.0
go: downloading github.com/go-playground/locales v0.14.1
go: downloading github.com/chenzhuoyu/base64x v0.0.0-20230717121745-296ad89f973d
go: downloading golang.org/x/arch v0.5.0
go: downloading github.com/twitchyliquid64/golang-asm v0.15.1
go: downloading github.com/klauspost/cpuid/v2 v2.2.4
go: downloading github.com/klauspost/cpuid/v2 v2.2.5
go: downloading github.com/klauspost/cpuid v1.3.1
go: downloading github.com/chenzhuoyu/iasm v0.9.0
go: added github.com/bytedance/sonic v1.10.2
go: added github.com/chenzhuoyu/base64x v0.0.0-20230717121745-296ad89f973d
go: added github.com/chenzhuoyu/iasm v0.9.0
go: added github.com/gabriel-vasile/mimetype v1.4.3
go: added github.com/gin-contrib/sse v0.1.0
go: added github.com/gin-gonic/gin v1.9.1
go: added github.com/go-playground/locales v0.14.1
go: added github.com/go-playground/universal-translator v0.18.1
go: added github.com/go-playground/validator/v10 v10.15.5
go: added github.com/goccy/go-json v0.10.2
go: added github.com/json-iterator/go v1.1.12
go: added github.com/klauspost/cpuid/v2 v2.2.5
go: added github.com/leodido/go-urn v1.2.4
go: added github.com/mattn/go-isatty v0.0.20
go: added github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd
go: added github.com/modern-go/reflect2 v1.0.2
go: added github.com/pelletier/go-toml/v2 v2.1.0
go: added github.com/twitchyliquid64/golang-asm v0.15.1
go: added github.com/ugorji/go/codec v1.2.11
go: added golang.org/x/arch v0.5.0
go: added golang.org/x/crypto v0.14.0
go: added golang.org/x/net v0.17.0
go: added golang.org/x/sys v0.13.0
go: added golang.org/x/text v0.13.0
go: added google.golang.org/protobuf v1.31.0
go: added gopkg.in/yaml.v3 v3.0.1
You have new mail in /var/mail/yshuq
yshuqdeMacBook-Pro:gin yshuq$ yshuqdeMacBook-Pro:gin yshuq$ go env
-bash: yshuqdeMacBook-Pro:gin: command not found
You have new mail in /var/mail/yshuq
yshuqdeMacBook-Pro:gin yshuq$ GO111MODULE=""
yshuqdeMacBook-Pro:gin yshuq$ GOARCH="amd64"
yshuqdeMacBook-Pro:gin yshuq$ GOBIN=""
yshuqdeMacBook-Pro:gin yshuq$ GOCACHE="/Users/yshuq/Library/Caches/go-build"
yshuqdeMacBook-Pro:gin yshuq$ GOENV="/Users/yshuq/Library/Application Support/go/env"
yshuqdeMacBook-Pro:gin yshuq$ GOEXE=""
yshuqdeMacBook-Pro:gin yshuq$ GOEXPERIMENT=""
yshuqdeMacBook-Pro:gin yshuq$ GOFLAGS=""
yshuqdeMacBook-Pro:gin yshuq$ GOHOSTARCH="amd64"
yshuqdeMacBook-Pro:gin yshuq$ GOHOSTOS="darwin"
yshuqdeMacBook-Pro:gin yshuq$ GOINSECURE=""
yshuqdeMacBook-Pro:gin yshuq$ GOMODCACHE="/Users/yshuq/Documents/go/pkg/mod"
yshuqdeMacBook-Pro:gin yshuq$ GONOPROXY=""
yshuqdeMacBook-Pro:gin yshuq$ GONOSUMDB=""
yshuqdeMacBook-Pro:gin yshuq$ GOOS="darwin"
yshuqdeMacBook-Pro:gin yshuq$ GOPATH="/Users/yshuq/Documents/go"
yshuqdeMacBook-Pro:gin yshuq$ GOPRIVATE=""
yshuqdeMacBook-Pro:gin yshuq$ GOPROXY="https://proxy.golang.org,direct"
yshuqdeMacBook-Pro:gin yshuq$ GOROOT="/usr/local/go"
yshuqdeMacBook-Pro:gin yshuq$ GOSUMDB="sum.golang.org"
yshuqdeMacBook-Pro:gin yshuq$ GOTMPDIR=""
yshuqdeMacBook-Pro:gin yshuq$ GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
yshuqdeMacBook-Pro:gin yshuq$ GOVCS=""
yshuqdeMacBook-Pro:gin yshuq$ GOVERSION="go1.18.2"
yshuqdeMacBook-Pro:gin yshuq$ GCCGO="gccgo"
yshuqdeMacBook-Pro:gin yshuq$ GOAMD64="v1"
yshuqdeMacBook-Pro:gin yshuq$ AR="ar"
yshuqdeMacBook-Pro:gin yshuq$ CC="clang"
yshuqdeMacBook-Pro:gin yshuq$ CXX="clang++"
yshuqdeMacBook-Pro:gin yshuq$ CGO_ENABLED="1"
yshuqdeMacBook-Pro:gin yshuq$ GOMOD="/dev/null"
yshuqdeMacBook-Pro:gin yshuq$ GOWORK=""
yshuqdeMacBook-Pro:gin yshuq$ CGO_CFLAGS="-g -O2"
yshuqdeMacBook-Pro:gin yshuq$ CGO_CPPFLAGS=""
yshuqdeMacBook-Pro:gin yshuq$ CGO_CXXFLAGS="-g -O2"
yshuqdeMacBook-Pro:gin yshuq$ CGO_FFLAGS="-g -O2"
yshuqdeMacBook-Pro:gin yshuq$ CGO_LDFLAGS="-g -O2"
yshuqdeMacBook-Pro:gin yshuq$ PKG_CONFIG="pkg-config"
yshuqdeMacBook-Pro:gin yshuq$ GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/kj/p7vrn06x37n6t9h_2chhgvv80000gn/T/go-build3399388752=/tmp/go-build -gno-record-gcc-switches -fno-common"
yshuqdeMacBook-Pro:gin yshuq$ You have new mail in /var/mail/yshuq

Leave a comment

您的电子邮箱地址不会被公开。 必填项已用 * 标注