首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Go Dep -在dep确保后缺少子包“chi/”

Go Dep -在dep确保后缺少子包“chi/”
EN

Stack Overflow用户
提问于 2019-04-21 12:03:16
回答 1查看 783关注 0票数 2

运行dep ensure后,go-chi中缺少中间件子包。

代码语言:javascript
复制
project-backend     |  main.go:8:2: cannot find package "github.com/go-chi/chi/middleware" in any of:
project-backend     |   /go/src/backend/vendor/github.com/go-chi/chi/middleware (vendor tree)
project-backend     |   /usr/local/go/src/github.com/go-chi/chi/middleware (from $GOROOT)
project-backend     |   /go/src/github.com/go-chi/chi/middleware (from $GOPATH)

我的Docker文件,我还在docker-compose.yaml文件中挂载了我的代码卷

代码语言:javascript
复制
FROM golang:1.12

WORKDIR /go/src/backend
COPY Gopkg.toml Gopkg.lock ./
RUN go get -u github.com/golang/dep/cmd/dep
COPY . ./
RUN dep ensure

RUN go get github.com/pilu/fresh

CMD [ "fresh" ]

Gopkg.toml

代码语言:javascript
复制
[prune]
  go-tests = true
  unused-packages = true
  non-go = true

[[constraint]]
  name = "github.com/go-chi/chi"
  version = "4.0.2"

我的代码,只是一个基本的路由器来测试我的坞站和dep配置。

代码语言:javascript
复制
package main

import (
    "fmt"
    "net/http"

    "github.com/go-chi/chi"
    "github.com/go-chi/chi/middleware"
)

func main() {
    r := chi.NewRouter()
    r.Use(middleware.Logger)

    port := ":8080"

    r.Get("/api", func(w http.ResponseWriter, r *http.Request) {
        w.Write([]byte("API is working!"))
    })

    format := "\033[1;36m%s\033[0m"
    fmt.Printf(format, "Build success, running on port "+port)
    http.ListenAndServe(port, r)
}

我的代码在使用go get时运行良好。但是在dep上,它缺少它的子包。

EN

回答 1

Stack Overflow用户

发布于 2019-04-21 13:13:59

由于您使用的是Go 1.12,您是否可以尝试在使用go mod (Go 1.11+ Modules)时查看问题是否仍然存在。

代码语言:javascript
复制
$ export GO111MODULE=on                         # manually active module mode
$ cd $GOPATH/src/<project path>                 # e.g., cd $GOPATH/src/you/hello
$ go mod init                  

一个go mod init将与你的dep Gopkg.lock文件一致。

并且它应该检测并获取您丢失的依赖项。

如果这样做有效,那么可以运行go mod tidy来删除任何无关紧要的需求。

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

https://stackoverflow.com/questions/55779784

复制
相关文章

相似问题

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