登录
首页 >  Golang >  Go问答

Golang 模块:引入接口定义

来源:stackoverflow

时间:2024-03-07 14:06:21 303浏览 收藏

学习知识要善于思考,思考,再思考!今天golang学习网小编就给大家带来《Golang 模块:引入接口定义》,以下内容主要包含等知识点,如果你正在学习或准备学习Golang,就都不要错过本文啦~让我们一起来看看吧,能帮助到你就更好了!

问题内容

我正在尝试学习 go 模块依赖管理器,但在导入自动生成的原型定义时遇到错误。已经为此苦苦挣扎了2天。任何帮助将不胜感激。 目录结构:

➜  ~/go-service-skeleton> tree .
.
├── protobuf
│   └── test_service
│       ├── test_service_config.pb.go
│       └── test_service_config.proto
├── src
│   └── test_service
│       ├── go.mod
│       ├── main.go
│       └── server
│           └── server.go

错误(最后一个错误特别令人担忧):

➜  ~/go-service-skeleton/src/test_service go build
bootstrap.go:11:2: no required module provides package github.com/sirupsen/logrus; to add it:
    go get github.com/sirupsen/logrus
bootstrap.go:12:2: no required module provides package github.com/sirupsen/logrus; to add it:
    go get github.com/sirupsen/logrus
bootstrap.go:13:2: no required module provides package gopkg.in/yaml.v2; to add it:
    go get gopkg.in/yaml.v2
server/server.go:8:2: package protobuf/test_service is not in goroot
~/go-service-skeleton/src/test_service echo $GOPATH
/Users/****/go-service-skeleton:/Users/****/go-service-skeleton/protobuf
~/go-service-skeleton/src/test_service echo $GOROOT

正确答案


test_service 模块中,go 命令可见的唯一依赖项是其 go.mod 文件中声明的依赖项。

最简单的解决方法是将所需的所有源代码放入主模块中。请注意,根据 https://blog.golang.org/generate,“如果包含的包打算由 go get 导入,则一旦生成文件(并进行测试!),就必须将其签入源代码存储库才能供客户端使用。”

以上就是《Golang 模块:引入接口定义》的详细内容,更多关于的资料请关注golang学习网公众号!

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