首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何用Golang安装Gin

如何用Golang安装Gin
EN

Stack Overflow用户
提问于 2020-04-08 01:14:52
回答 3查看 13.5K关注 0票数 14

我是Golang的新手,我正在尝试使用杜松子酒在Ubuntu16.04上开发一个web服务器。

执行go get -u github.com/gin-gonic/gin后,许多文件夹出现在~/go/pkg/mod/github.com/

然后我试着做一个例子:

代码语言:javascript
运行
复制
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 example.go犯了错误:

代码语言:javascript
运行
复制
example.go:3:8: cannot find package "github.com/gin-gonic/gin" in any of:
        /usr/local/go/src/github.com/gin-gonic/gin (from $GOROOT)
        /home/zyh/go/src/github.com/gin-gonic/gin (from $GOPATH)

在我的系统中,$GOROOT/usr/local/go/$GOPATH~/go/

我怎样才能解决这个问题?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-04-08 01:59:51

对于版本1.11或更高版本,您应该使用Go模块

如果你只是从Go开始,你应该从新的版本开始。我认为您已经使用了支持Go模块的go版本,因为您要获取的模块正在下载到~/go/pkg/mod/目录。

若要使用go模块初始化项目,请运行:

代码语言:javascript
运行
复制
go mod init your-project-name

这将在项目目录中创建一个go.mod文件。

添加丢失和/或删除未使用的模块:

代码语言:javascript
运行
复制
go mod tidy

这将用适当的模块填充go.mod文件,并在项目目录中创建一个go.sum。go.sum包含每个模块版本的预期密码散列。

在此之后,go run example.go命令将运行程序,不会出现任何问题。

您甚至可以在项目目录中提供模块:

代码语言:javascript
运行
复制
go mod vendor

这将将所有供应商带到您的项目/vendor目录中,这样,如果在此项目上从另一台机器上工作,您就不需要再次获取模块。

票数 30
EN

Stack Overflow用户

发布于 2022-05-19 04:11:08

我意识到,在添加了一个名为gopls的包之后,我的IDE运行得非常好。

使用snap安装goplssudo snap install gopls --classic

票数 0
EN

Stack Overflow用户

发布于 2020-04-08 01:59:35

从错误中,你可以看到GOPATH是你的'/home/zyh/go‘,而不是你的~/go。您还可以运行shell go env来确认您的GOPATH在哪里?那就修改它。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61091852

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档