-2

我正在学习 Go 广告,我正在尝试构建 go 文件:

package main

import (
    "github.com/go-chi/chi/v5"
    "github.com/go-chi/chi/v5/middleware"
    "net/http"
)

func main() {
    r := chi.NewRouter()
    r.Use(middleware.Logger)
    r.Get("/", func(w http.ResponseWriter, r *http.Request) {
        w.Write([]byte("welcome"))
    })
    http.ListenAndServe(":3000", r)
}

但是当我使用 command 构建程序时go build main.go,它会输出:

go: github.com/go-chi/chi/@v1.5.4: missing go.sum entry; to add it:
        go mod download github.com/go-chi/chi/

go.mod

module exprog

go 1.16

require github.com/go-chi/chi/ v1.5.4

当我执行时go mod download github.com/go-chi/chi/,我收到此错误:

go: github.com/go-chi/chi/@v1.5.4: malformed module path "github.com/go-chi/chi/": trailing slash

我该做什么?

4

2 回答 2

1

不是命令中的错误,是 go.mod 文件中的错误。您可以通过以下方式修复:

module exprog

go 1.16

require github.com/go-chi/chi/v5 v5
于 2021-09-29T09:57:04.207 回答
0

假设您要下载此模块,您应该这样做go mod download github.com/go-chi/chi/v5。模块的名称是依赖项的 go.mod 文件中的标头。

您可以从 go.mod 中删除该条目并简单地执行go mod download github.com/go-chi/chi/v5

或者

您可以从 go.mod 中删除该条目,然后执行go mod tidy. Go 将根据您的导入填充您的 go.mod 文件。那你就可以go mod download了。

于 2021-09-27T14:34:22.700 回答