登录
首页 >  Golang >  Go问答

无法从模块获取包

来源:stackoverflow

时间:2024-04-30 16:48:35 299浏览 收藏

本篇文章向大家介绍《无法从模块获取包》,主要包括,具有一定的参考价值,需要的朋友可以参考一下。

问题内容

我正在尝试创建一个微服务应用程序,它取决于我的 net 模块,其中包含一般错误(因此我不必在所有模块中“复制”它们)。

问题是,由于某种原因它能够找到该模块,但随后告诉我该模块没有包(net 模块没有 main.go 文件,因为它只是一组文件,用于其他项目)

go: finding github.com/username/net latest
build github.com/username/micro-helix: cannot load github.com/username/net: module github.com/username/net@latest found (v0.0.0-20191209010811-97a65ac0928c), but does not contain package github.com/username/net

这是 go.mod 文件,其中包含所有必要的要求(就我而言):

module github.com/username/micro-helix

go 1.13

require (
    github.com/username/net v0.0.0-20191209010811-97a65ac0928c
    github.com/username/service v0.0.0-20191209005400-57ee0eb02082
    github.com/golang/protobuf v1.3.2
    github.com/hashicorp/consul/api v1.3.0 // indirect
    github.com/micro/go-micro v1.17.1
    github.com/micro/go-plugins v1.5.1 // indirect
    github.com/nats-io/nats-streaming-server v0.16.2 // indirect
    github.com/nats-io/stan.go v0.5.2 // indirect
    github.com/nicklaw5/helix v0.5.4
    github.com/spf13/viper v1.5.0 // indirect
)

net 模块的 go.mod 文件非常简单:

module github.com/username/net

go 1.13

如果您需要任何进一步的说明,我会在这里提供。我知道这可能是一些菜鸟错误(配置错误),但这是我第一周真正尝试用 go 编写一些东西。

更新#1

这是github.com/username/net模块的结构

/-
    errors/
        -   error.go            // github.com/USERNAME/net/errors
        -   code.go             // github.com/USERNAME/net/errors
    proto/
        -   error.pb.go         // github.com/USERNAME/net/proto
        -   response.pb.go      // github.com/USERNAME/net/proto
    errors.proto
    go.mod                      // module github.com/USERNAME/net
    response.proto

解决方案


您可能已从 github.com/username/micro-helix 中的一些 *.g​​o 文件导入模块为 github.com/username/net

您必须通过完整路径导入所有子包(您在该文件中使用)

import (
    "github.com/USERNAME/net/errors"
    "github.com/USERNAME/net/proto"
)

本篇关于《无法从模块获取包》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于Golang的相关知识,请关注golang学习网公众号!

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