登录
首页 >  Golang >  Go问答

为什么 go get 在进入带有 go.work 存储库时会发出 "package is not used in this module" 警告?

来源:stackoverflow

时间:2024-02-09 09:45:26 126浏览 收藏

今天golang学习网给大家带来了《为什么 go get 在进入带有 go.work 存储库时会发出 "package is not used in this module" 警告?》,其中涉及到的知识点包括等等,无论你是小白还是老手,都适合看一看哦~有好的建议也欢迎大家在评论留言,若是看完有所收获,也希望大家能多多点赞支持呀!一起加油学习~

问题内容

我的目标是创建一个包含多个文件夹的存储库。

|- go.work
|- websocket
|  |- go.mod
|  |- go.sum
|  |- server.go
|- channel
|  |- main.go

websocket 使用 github.com/gorilla/websocket 包。

所以,我需要在 websocket 文件夹中执行操作。

  1. $ go mod init github.com/kidfrom/learn-golang/websocket
  2. $ 前往 github.com/gorilla/[email protected]
  3. $ 去工作使用 .

问题是,websocket/go.mod 抛出警告

github.com/gorilla/websocket is not used in this module

如果我执行 go mod tidy,则 websocket/go.mod 将被清除,并且 websocket/server.go 将抛出错误

could not import github.com/gorilla/websocket (no required module provides package "github.com/gorilla/websocket")

tldr

websocket/go.mod

module github.com/kidfrom/learn-golang/websocket

go 1.19

require github.com/gorilla/websocket v1.5.0 // indirect

websocket/go.sum

github.com/gorilla/websocket v1.5.0 h1:ppwgk2jz7eeppohn/+clbzu8spxiqlu12wzp/3swmnc=
github.com/gorilla/websocket v1.5.0/go.mod h1:yr8l580nyteqvaitg2hz9xvh4b55+eu/adajf1fmhhe=

websocket/server.go

去工作

go 1.19

use (
    ./websocket
)

正确答案


首先,确保您的 server.go 位于 package main 中,就像原始的 gorilla/websocket/examples/echo/server.go 一样。

其次,测试文件夹名称( websocket)是否存在问题(与 websocket.xxx 调用冲突)。
为了进行测试,请尝试更改它(并相应地更新 go.work

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《为什么 go get 在进入带有 go.work 存储库时会发出 "package is not used in this module" 警告?》文章吧,也可关注golang学习网公众号了解相关技术文章。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>