0

我来自 node.js 生态系统。

Golang 终于发布了它的模块系统,我已经阅读了一些关于它的文章:

但是,在那之后,我仍然没有找到像 npmjs.com 这样可以找到可用 go 模块的地方。

4

4 回答 4

5

Go 模块没有中央存储库。只要您遵循发布 Go 包的约定(请参阅PackagePublishing),go 工具将能够获取您的包/模块,无论您在哪里发布它。

为了发现 Go 世界中已经存在的东西,一个很好的起点是Awesome Go,一个精选的 Go 包/模块列表。

于 2019-04-11T07:38:02.053 回答
5

目前还没有中央存储库,请注意,模块支持在 Go 1.12 中仍处于试验阶段。它将在 Go 1.13(计划于 2019 年 8 月)中默认启用。

查看Go 博客:2019 年的 Go 模块

对于公开可用的模块,我们打算运行我们称为公证人的服务,该服务跟踪模块索引日志,下载新模块,并对“版本 V 的模块 M 具有文件树哈希 H”形式的语句进行加密签名。公证人服务将在可查询的、证书透明风格的防篡改日志中发布所有这些经过公证的哈希,以便任何人都可以验证公证人的行为是否正确。此日志将用作公共的全局go.sum文件,go get可用于在添加或更新依赖项时对模块进行身份验证。

go.sum我们的目标是让 go 命令检查在 Go 1.13 中尚未开始的公开可用模块的公证哈希。

模块发现

最后,我们之前提到,模块索引将使构建像 godoc.org 这样的网站变得更加容易。我们在 2019 年的部分工作将是对 godoc.org 进行重大改造,使其对需要发现可用模块然后决定是否依赖给定模块的开发人员更有用。

大图

此图显示了模块源代码如何在本文中的设计中移动。

在此处输入图像描述

于 2019-04-11T09:52:47.950 回答
5

https://search.gocenter.io可用于搜索 Go 模块,了解模块版本的流行度,甚至帮助模块作者与他们的消费者建立联系。这是自 2019 年 1 月下旬以来的 GA,并且在全球范围内可用。

于 2019-08-29T20:43:03.177 回答
1

我有同样的问题。如果您从内置包(https://golang.org/pkg/)开始,并遵循一些不明显的链接,您最终会在这里结束:

https://pkg.go.dev/

于 2020-10-21T20:47:35.010 回答