Skip to content

Files

Latest commit

 

History

History
150 lines (91 loc) · 4.45 KB

GO.md

File metadata and controls

150 lines (91 loc) · 4.45 KB

配置GOPATH

步骤 1:初始化 Go 模块

在你的项目目录下,执行以下命令来初始化 Go 模块:

go mod init <module_name>

<module_name> 可以是你项目的名字,或者一个 URL。例如:

go mod init my-gin-app

这个命令会在项目目录中创建一个 go.mod 文件,用于管理依赖。

步骤 2:安装 gin 依赖

初始化模块后,你可以使用 go get 或者 go install 来安装 gin 框架。推荐使用 go get 来管理项目依赖:

go get -u github.com/gin-gonic/gin
  • 不带 -u:不会更新已存在的依赖,只会添加新依赖或使用已有依赖的当前版本。
  • -u:会主动更新依赖到最新的次要版本或修订版本。

这个命令会在 go.mod 文件中记录 gin 作为依赖,并在 go.sum 文件中锁定依赖版本。

步骤 3:编写和运行程序

现在你可以编写 Golang 程序并运行。确保文件结构如下:

my-gin-app/
    go.mod
    go.sum
    main.go

main.go 文件内容可以参考前面的示例:

package main

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

func main() {
    r := gin.Default()

    r.GET("/ping", func(c *gin.Context) {
        c.JSON(http.StatusOK, gin.H{
            "message": "pong",
        })
    })

    r.Run(":8080")
}

步骤 4:运行程序

使用以下命令来运行项目:

go run main.go

访问 http://localhost:8080/ping

进一步说明

  1. go mod init: 用于创建一个 Go 模块,这是 Go 1.11 及以后的推荐管理依赖方式。模块化能够自动跟踪和更新依赖。

  2. go get: 在 Go 模块环境中,用于获取和安装库。随着 go install 的新变化,推荐在安装库时使用版本号,如 @latest 表示获取最新稳定版本。

希望这能解决你遇到的问题!


You:

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

这是命令 是局部安装包还是全局


ChatGPT:

在 Go 中,go get 下载的依赖库(如 github.com/gin-gonic/gin)是局部安装在当前模块(项目)内的,而不是全局安装。这意味着:

  1. 局部依赖管理:当你在项目中执行 go get,它会将库的版本信息记录在项目的 go.modgo.sum 文件中。这样,即使在不同项目中使用相同的库,依赖版本可以彼此独立管理。

  2. 全局缓存:尽管 go get 安装的包是局部管理的,但 Go 也会将下载的包缓存在你的本地 Go 缓存中(通常在 $GOPATH/pkg/mod 目录下)。因此,即使你在不同项目中多次使用同一个库,Go 只会下载一次,然后在各项目中复用该库。

/pkg/mod 目录是 Go 模块缓存的存放路径,默认情况下,Go 会将所有下载的依赖包存储在该目录中,以便在多个项目中重复使用,从而避免重复下载。如果你想清除 /pkg/mod 目录下的内容,有以下几种方式可以做到。

方法 1:手动删除 /pkg/mod 目录

你可以直接手动删除 /pkg/mod 目录中的缓存文件。该目录的位置通常是 $GOPATH/pkg/mod,如果没有设置 GOPATH,默认位置为 ~/go/pkg/mod(在 Linux 和 macOS 上),或者 C:\Users\YourUser\go\pkg\mod(在 Windows 上)。

  1. 查找 Go 模块缓存的路径:

    • 如果你不确定 GOPATH,可以使用以下命令来查看:

      go env GOPATH
  2. 删除模块缓存:

    • 在 Linux 或 macOS 上,可以通过以下命令删除缓存:

      rm -rf $(go env GOPATH)/pkg/mod
    • 在 Windows 上,可以手动进入 GOPATH 对应的文件夹,然后删除 pkg/mod 目录。

方法 2:使用 Go 提供的清理命令

Go 提供了 go clean 命令,可以用于清理构建缓存和模块缓存。

  1. 清理模块缓存

    你可以使用以下命令来清理 Go 模块缓存:

    go clean -modcache

    该命令会清空 pkg/mod 目录中的所有缓存模块。

  2. 清理构建缓存

    如果你还想清理构建缓存,可以运行以下命令:

    go clean -cache

    这将清理 Go 构建过程中产生的缓存文件,但不会影响模块缓存。