gpt4 book ai didi

go - 不允许使用内部包

转载 作者:行者123 更新时间:2023-12-01 19:29:51 25 4
gpt4 key购买 nike

我正在尝试构建和运行一个 repo (https://github.com/hyperledger/fabric/tree/master),但是这个错误不断出现,我仍然没有找到解决方案。

consensus.go:12:2: use of internal package github.com/hyperledger/fabric/internal/pkg/identity not allowed

这只是导致此错误的众多文件之一。
我很确定我做错了什么,因为这个 repo 应该是有效的。

去版本:
go version go1.13.5 linux/amd64

操作系统:Linux Mint 19.2 肉桂

最佳答案

Internal packages (位于路径中有 internal 文件夹的文件夹内的包)只能从以 internal 的父级为根的包中导入。文件夹。

例如。一个包pkg/foo/internal/bar可以通过包导入pkg/foo/internal/baz也来自 pkg/foo/baz , 但无法通过包 pkg 导入也不能通过pkg/bar导入.这是设计使然。这是如此之大,复杂的包可以分解成更小的包,而不必暴露内部结构。

您必须将内部包视为“私有(private)”或“外部”不存在。

见相关:Can I develop a go package in multiple source directories?

Command go: Internal Directories 上阅读有关内部包的更多信息.

内部包是编译器限制。如果你想在你自己的项目中公开它们(如果你想使用内部包),你必须删除 internal文件夹,然后当然你也必须更改导入(导入路径)。

关于go - 不允许使用内部包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59342373/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com