簡體   English   中英

缺少提供 package 的模塊的 go.sum 條目<package_name></package_name>

[英]missing go.sum entry for module providing package <package_name>

使用 buffalo 框架,在通過buffalo new <project_name>引導它之后

我正在嘗試運行buffalo dev期望看到:

項目運行在3000端口

但是我收到了那些錯誤消息

actions/app.go:4:2: missing go.sum entry for module providing package github.com/gobuffalo/buffalo (imported by sc_api/actions); to add:go get sc_api/actions

actions/app.go:13:2: missing go.sum entry for module providing package github.com/gobuffalo/mw-csrf (imported by sc_api/actions); to add: go get sc_api/actions

actions/app.go已由 buffalo 生成,但如果您想知道錯誤是否與此文件中的導入語句匹配。

// app.go
package actions

import (
    "github.com/gobuffalo/buffalo"  // 1rst line
    "github.com/gobuffalo/envy"
    forcessl "github.com/gobuffalo/mw-forcessl"
    paramlogger "github.com/gobuffalo/mw-paramlogger"
    "github.com/unrolled/secure"

    "sc_api/models"

    "github.com/gobuffalo/buffalo-pop/v2/pop/popmw"
    csrf "github.com/gobuffalo/mw-csrf"  // 2nd line
    i18n "github.com/gobuffalo/mw-i18n"
    "github.com/gobuffalo/packr/v2"
)

這是什么意思? 我如何解決它?

看來這個問題與水牛無關。 總的來說,我對 go 缺乏了解。

運行go mod tidy解決了這個問題

此命令 go 通過 go.mod 文件解決依賴關系:

  • 刪除不需要的 package
  • 下載需要的
  • 更新go.sum

我仍然不確定這些動作中的哪一個起到了作用……但是項目運行了。

ps:我將在這里對 go 向導進行深入解釋/更正。

我在構建 docker 圖像時遇到了同樣的問題。 我嘗試go mod tidygo get -t. 正如這里所建議的https://github.com/golang/go/issues/44129 雖然兩者都沒有為我工作,但將我的 docker 構建器更新到版本1.18工作。

我使用go mod tidy -e解決了這個問題。 -e 標志(在 Go 1.16 中添加)導致 go mod tidy 嘗試繼續,盡管在加載包時遇到錯誤。有關mod tidy的更多信息: https://go.dev/ref/mod#go-mod-tidy

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM