为了账号安全,请及时绑定邮箱和手机立即绑定

不允许使用内部包

不允许使用内部包

Go
不负相思意 2022-04-26 10:52:28
我正在尝试构建和运行一个存储库(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 肉桂
查看完整描述

2 回答

?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

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

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

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

参见相关:我可以在多个源目录中开发一个 go 包吗?

在Command go: Internal Directories阅读更多关于内部包的信息。

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


查看完整回答
反对 回复 2022-04-26
?
ibeautiful

TA贡献1993条经验 获得超5个赞

将fyne.io/fyne/v2/internal/widget 更改fyne.io/fyne/v2/widget

只需从代码编辑器内的包路径中删除/internal


查看完整回答
反对 回复 2022-04-26
  • 2 回答
  • 0 关注
  • 235 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信